unifi

package
v0.0.0-...-ac9024e Latest Latest
Warning

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

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

Documentation

Overview

A Pulumi package for creating and managing Unifi network resources.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Account

type Account struct {
	pulumi.CustomResourceState

	// The name of the account.
	Name pulumi.StringOutput `pulumi:"name"`
	// ID of the network for this account
	NetworkId pulumi.StringPtrOutput `pulumi:"networkId"`
	// The password of the account.
	Password pulumi.StringOutput `pulumi:"password"`
	// The name of the site to associate the account with.
	Site pulumi.StringOutput `pulumi:"site"`
	// See [RFC 2868](https://www.rfc-editor.org/rfc/rfc2868) section 3.2 Defaults to `6`.
	TunnelMediumType pulumi.IntPtrOutput `pulumi:"tunnelMediumType"`
	// See [RFC 2868](https://www.rfc-editor.org/rfc/rfc2868) section 3.1 Defaults to `13`.
	TunnelType pulumi.IntPtrOutput `pulumi:"tunnelType"`
}

`Account` manages a RADIUS user account

To authenticate devices based on MAC address, use the MAC address as the username and password under client creation. Convert lowercase letters to uppercase, and also remove colons or periods from the MAC address.

ATTENTION: If the user profile does not include a VLAN, the client will fall back to the untagged VLAN.

NOTE: MAC-based authentication accounts can only be used for wireless and wired clients. L2TP remote access does not apply.

func GetAccount

func GetAccount(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountState, opts ...pulumi.ResourceOption) (*Account, error)

GetAccount gets an existing Account resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAccount

func NewAccount(ctx *pulumi.Context,
	name string, args *AccountArgs, opts ...pulumi.ResourceOption) (*Account, error)

NewAccount registers a new resource with the given unique name, arguments, and options.

func (*Account) ElementType

func (*Account) ElementType() reflect.Type

func (*Account) ToAccountOutput

func (i *Account) ToAccountOutput() AccountOutput

func (*Account) ToAccountOutputWithContext

func (i *Account) ToAccountOutputWithContext(ctx context.Context) AccountOutput

func (*Account) ToOutput

func (i *Account) ToOutput(ctx context.Context) pulumix.Output[*Account]

type AccountArgs

type AccountArgs struct {
	// The name of the account.
	Name pulumi.StringPtrInput
	// ID of the network for this account
	NetworkId pulumi.StringPtrInput
	// The password of the account.
	Password pulumi.StringInput
	// The name of the site to associate the account with.
	Site pulumi.StringPtrInput
	// See [RFC 2868](https://www.rfc-editor.org/rfc/rfc2868) section 3.2 Defaults to `6`.
	TunnelMediumType pulumi.IntPtrInput
	// See [RFC 2868](https://www.rfc-editor.org/rfc/rfc2868) section 3.1 Defaults to `13`.
	TunnelType pulumi.IntPtrInput
}

The set of arguments for constructing a Account resource.

func (AccountArgs) ElementType

func (AccountArgs) ElementType() reflect.Type

type AccountArray

type AccountArray []AccountInput

func (AccountArray) ElementType

func (AccountArray) ElementType() reflect.Type

func (AccountArray) ToAccountArrayOutput

func (i AccountArray) ToAccountArrayOutput() AccountArrayOutput

func (AccountArray) ToAccountArrayOutputWithContext

func (i AccountArray) ToAccountArrayOutputWithContext(ctx context.Context) AccountArrayOutput

func (AccountArray) ToOutput

func (i AccountArray) ToOutput(ctx context.Context) pulumix.Output[[]*Account]

type AccountArrayInput

type AccountArrayInput interface {
	pulumi.Input

	ToAccountArrayOutput() AccountArrayOutput
	ToAccountArrayOutputWithContext(context.Context) AccountArrayOutput
}

AccountArrayInput is an input type that accepts AccountArray and AccountArrayOutput values. You can construct a concrete instance of `AccountArrayInput` via:

AccountArray{ AccountArgs{...} }

type AccountArrayOutput

type AccountArrayOutput struct{ *pulumi.OutputState }

func (AccountArrayOutput) ElementType

func (AccountArrayOutput) ElementType() reflect.Type

func (AccountArrayOutput) Index

func (AccountArrayOutput) ToAccountArrayOutput

func (o AccountArrayOutput) ToAccountArrayOutput() AccountArrayOutput

func (AccountArrayOutput) ToAccountArrayOutputWithContext

func (o AccountArrayOutput) ToAccountArrayOutputWithContext(ctx context.Context) AccountArrayOutput

func (AccountArrayOutput) ToOutput

type AccountInput

type AccountInput interface {
	pulumi.Input

	ToAccountOutput() AccountOutput
	ToAccountOutputWithContext(ctx context.Context) AccountOutput
}

type AccountMap

type AccountMap map[string]AccountInput

func (AccountMap) ElementType

func (AccountMap) ElementType() reflect.Type

func (AccountMap) ToAccountMapOutput

func (i AccountMap) ToAccountMapOutput() AccountMapOutput

func (AccountMap) ToAccountMapOutputWithContext

func (i AccountMap) ToAccountMapOutputWithContext(ctx context.Context) AccountMapOutput

func (AccountMap) ToOutput

func (i AccountMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Account]

type AccountMapInput

type AccountMapInput interface {
	pulumi.Input

	ToAccountMapOutput() AccountMapOutput
	ToAccountMapOutputWithContext(context.Context) AccountMapOutput
}

AccountMapInput is an input type that accepts AccountMap and AccountMapOutput values. You can construct a concrete instance of `AccountMapInput` via:

AccountMap{ "key": AccountArgs{...} }

type AccountMapOutput

type AccountMapOutput struct{ *pulumi.OutputState }

func (AccountMapOutput) ElementType

func (AccountMapOutput) ElementType() reflect.Type

func (AccountMapOutput) MapIndex

func (AccountMapOutput) ToAccountMapOutput

func (o AccountMapOutput) ToAccountMapOutput() AccountMapOutput

func (AccountMapOutput) ToAccountMapOutputWithContext

func (o AccountMapOutput) ToAccountMapOutputWithContext(ctx context.Context) AccountMapOutput

func (AccountMapOutput) ToOutput

type AccountOutput

type AccountOutput struct{ *pulumi.OutputState }

func (AccountOutput) ElementType

func (AccountOutput) ElementType() reflect.Type

func (AccountOutput) Name

The name of the account.

func (AccountOutput) NetworkId

func (o AccountOutput) NetworkId() pulumi.StringPtrOutput

ID of the network for this account

func (AccountOutput) Password

func (o AccountOutput) Password() pulumi.StringOutput

The password of the account.

func (AccountOutput) Site

The name of the site to associate the account with.

func (AccountOutput) ToAccountOutput

func (o AccountOutput) ToAccountOutput() AccountOutput

func (AccountOutput) ToAccountOutputWithContext

func (o AccountOutput) ToAccountOutputWithContext(ctx context.Context) AccountOutput

func (AccountOutput) ToOutput

func (o AccountOutput) ToOutput(ctx context.Context) pulumix.Output[*Account]

func (AccountOutput) TunnelMediumType

func (o AccountOutput) TunnelMediumType() pulumi.IntPtrOutput

See [RFC 2868](https://www.rfc-editor.org/rfc/rfc2868) section 3.2 Defaults to `6`.

func (AccountOutput) TunnelType

func (o AccountOutput) TunnelType() pulumi.IntPtrOutput

See [RFC 2868](https://www.rfc-editor.org/rfc/rfc2868) section 3.1 Defaults to `13`.

type AccountState

type AccountState struct {
	// The name of the account.
	Name pulumi.StringPtrInput
	// ID of the network for this account
	NetworkId pulumi.StringPtrInput
	// The password of the account.
	Password pulumi.StringPtrInput
	// The name of the site to associate the account with.
	Site pulumi.StringPtrInput
	// See [RFC 2868](https://www.rfc-editor.org/rfc/rfc2868) section 3.2 Defaults to `6`.
	TunnelMediumType pulumi.IntPtrInput
	// See [RFC 2868](https://www.rfc-editor.org/rfc/rfc2868) section 3.1 Defaults to `13`.
	TunnelType pulumi.IntPtrInput
}

func (AccountState) ElementType

func (AccountState) ElementType() reflect.Type

type Device

type Device struct {
	pulumi.CustomResourceState

	// Specifies whether this resource should tell the controller to adopt the device on create. Defaults to `true`.
	AllowAdoption pulumi.BoolPtrOutput `pulumi:"allowAdoption"`
	// Specifies whether this device should be disabled.
	Disabled pulumi.BoolOutput `pulumi:"disabled"`
	// Specifies whether this resource should tell the controller to forget the device on destroy. Defaults to `true`.
	ForgetOnDestroy pulumi.BoolPtrOutput `pulumi:"forgetOnDestroy"`
	// The MAC address of the device. This can be specified so that the provider can take control of a device (since devices are created through adoption).
	Mac pulumi.StringOutput `pulumi:"mac"`
	// The name of the device.
	Name pulumi.StringOutput `pulumi:"name"`
	// Settings overrides for specific switch ports.
	PortOverrides DevicePortOverrideArrayOutput `pulumi:"portOverrides"`
	// The name of the site to associate the device with.
	Site pulumi.StringOutput `pulumi:"site"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi/port"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		disabled, err := port.LookupProfile(ctx, &port.LookupProfileArgs{
			Name: pulumi.StringRef("Disabled"),
		}, nil)
		if err != nil {
			return err
		}
		poe, err := port.NewProfile(ctx, "poe", &port.ProfileArgs{
			Forward:             pulumi.String("customize"),
			NativeNetworkconfId: pulumi.Any(_var.Native_network_id),
			TaggedNetworkconfIds: pulumi.StringArray{
				_var.Some_vlan_network_id,
			},
			PoeMode: pulumi.String("auto"),
		})
		if err != nil {
			return err
		}
		_, err = unifi.NewDevice(ctx, "us24Poe", &unifi.DeviceArgs{
			Mac: pulumi.String("01:23:45:67:89:AB"),
			PortOverrides: unifi.DevicePortOverrideArray{
				&unifi.DevicePortOverrideArgs{
					Number:        pulumi.Int(1),
					Name:          pulumi.String("port w/ poe"),
					PortProfileId: poe.ID(),
				},
				&unifi.DevicePortOverrideArgs{
					Number:        pulumi.Int(2),
					Name:          pulumi.String("disabled"),
					PortProfileId: *pulumi.String(disabled.Id),
				},
				&unifi.DevicePortOverrideArgs{
					Number:            pulumi.Int(11),
					OpMode:            pulumi.String("aggregate"),
					AggregateNumPorts: pulumi.Int(2),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetDevice

func GetDevice(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DeviceState, opts ...pulumi.ResourceOption) (*Device, error)

GetDevice gets an existing Device resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDevice

func NewDevice(ctx *pulumi.Context,
	name string, args *DeviceArgs, opts ...pulumi.ResourceOption) (*Device, error)

NewDevice registers a new resource with the given unique name, arguments, and options.

func (*Device) ElementType

func (*Device) ElementType() reflect.Type

func (*Device) ToDeviceOutput

func (i *Device) ToDeviceOutput() DeviceOutput

func (*Device) ToDeviceOutputWithContext

func (i *Device) ToDeviceOutputWithContext(ctx context.Context) DeviceOutput

func (*Device) ToOutput

func (i *Device) ToOutput(ctx context.Context) pulumix.Output[*Device]

type DeviceArgs

type DeviceArgs struct {
	// Specifies whether this resource should tell the controller to adopt the device on create. Defaults to `true`.
	AllowAdoption pulumi.BoolPtrInput
	// Specifies whether this resource should tell the controller to forget the device on destroy. Defaults to `true`.
	ForgetOnDestroy pulumi.BoolPtrInput
	// The MAC address of the device. This can be specified so that the provider can take control of a device (since devices are created through adoption).
	Mac pulumi.StringPtrInput
	// The name of the device.
	Name pulumi.StringPtrInput
	// Settings overrides for specific switch ports.
	PortOverrides DevicePortOverrideArrayInput
	// The name of the site to associate the device with.
	Site pulumi.StringPtrInput
}

The set of arguments for constructing a Device resource.

func (DeviceArgs) ElementType

func (DeviceArgs) ElementType() reflect.Type

type DeviceArray

type DeviceArray []DeviceInput

func (DeviceArray) ElementType

func (DeviceArray) ElementType() reflect.Type

func (DeviceArray) ToDeviceArrayOutput

func (i DeviceArray) ToDeviceArrayOutput() DeviceArrayOutput

func (DeviceArray) ToDeviceArrayOutputWithContext

func (i DeviceArray) ToDeviceArrayOutputWithContext(ctx context.Context) DeviceArrayOutput

func (DeviceArray) ToOutput

func (i DeviceArray) ToOutput(ctx context.Context) pulumix.Output[[]*Device]

type DeviceArrayInput

type DeviceArrayInput interface {
	pulumi.Input

	ToDeviceArrayOutput() DeviceArrayOutput
	ToDeviceArrayOutputWithContext(context.Context) DeviceArrayOutput
}

DeviceArrayInput is an input type that accepts DeviceArray and DeviceArrayOutput values. You can construct a concrete instance of `DeviceArrayInput` via:

DeviceArray{ DeviceArgs{...} }

type DeviceArrayOutput

type DeviceArrayOutput struct{ *pulumi.OutputState }

func (DeviceArrayOutput) ElementType

func (DeviceArrayOutput) ElementType() reflect.Type

func (DeviceArrayOutput) Index

func (DeviceArrayOutput) ToDeviceArrayOutput

func (o DeviceArrayOutput) ToDeviceArrayOutput() DeviceArrayOutput

func (DeviceArrayOutput) ToDeviceArrayOutputWithContext

func (o DeviceArrayOutput) ToDeviceArrayOutputWithContext(ctx context.Context) DeviceArrayOutput

func (DeviceArrayOutput) ToOutput

func (o DeviceArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]*Device]

type DeviceInput

type DeviceInput interface {
	pulumi.Input

	ToDeviceOutput() DeviceOutput
	ToDeviceOutputWithContext(ctx context.Context) DeviceOutput
}

type DeviceMap

type DeviceMap map[string]DeviceInput

func (DeviceMap) ElementType

func (DeviceMap) ElementType() reflect.Type

func (DeviceMap) ToDeviceMapOutput

func (i DeviceMap) ToDeviceMapOutput() DeviceMapOutput

func (DeviceMap) ToDeviceMapOutputWithContext

func (i DeviceMap) ToDeviceMapOutputWithContext(ctx context.Context) DeviceMapOutput

func (DeviceMap) ToOutput

func (i DeviceMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Device]

type DeviceMapInput

type DeviceMapInput interface {
	pulumi.Input

	ToDeviceMapOutput() DeviceMapOutput
	ToDeviceMapOutputWithContext(context.Context) DeviceMapOutput
}

DeviceMapInput is an input type that accepts DeviceMap and DeviceMapOutput values. You can construct a concrete instance of `DeviceMapInput` via:

DeviceMap{ "key": DeviceArgs{...} }

type DeviceMapOutput

type DeviceMapOutput struct{ *pulumi.OutputState }

func (DeviceMapOutput) ElementType

func (DeviceMapOutput) ElementType() reflect.Type

func (DeviceMapOutput) MapIndex

func (DeviceMapOutput) ToDeviceMapOutput

func (o DeviceMapOutput) ToDeviceMapOutput() DeviceMapOutput

func (DeviceMapOutput) ToDeviceMapOutputWithContext

func (o DeviceMapOutput) ToDeviceMapOutputWithContext(ctx context.Context) DeviceMapOutput

func (DeviceMapOutput) ToOutput

func (o DeviceMapOutput) ToOutput(ctx context.Context) pulumix.Output[map[string]*Device]

type DeviceOutput

type DeviceOutput struct{ *pulumi.OutputState }

func (DeviceOutput) AllowAdoption

func (o DeviceOutput) AllowAdoption() pulumi.BoolPtrOutput

Specifies whether this resource should tell the controller to adopt the device on create. Defaults to `true`.

func (DeviceOutput) Disabled

func (o DeviceOutput) Disabled() pulumi.BoolOutput

Specifies whether this device should be disabled.

func (DeviceOutput) ElementType

func (DeviceOutput) ElementType() reflect.Type

func (DeviceOutput) ForgetOnDestroy

func (o DeviceOutput) ForgetOnDestroy() pulumi.BoolPtrOutput

Specifies whether this resource should tell the controller to forget the device on destroy. Defaults to `true`.

func (DeviceOutput) Mac

The MAC address of the device. This can be specified so that the provider can take control of a device (since devices are created through adoption).

func (DeviceOutput) Name

func (o DeviceOutput) Name() pulumi.StringOutput

The name of the device.

func (DeviceOutput) PortOverrides

func (o DeviceOutput) PortOverrides() DevicePortOverrideArrayOutput

Settings overrides for specific switch ports.

func (DeviceOutput) Site

func (o DeviceOutput) Site() pulumi.StringOutput

The name of the site to associate the device with.

func (DeviceOutput) ToDeviceOutput

func (o DeviceOutput) ToDeviceOutput() DeviceOutput

func (DeviceOutput) ToDeviceOutputWithContext

func (o DeviceOutput) ToDeviceOutputWithContext(ctx context.Context) DeviceOutput

func (DeviceOutput) ToOutput

func (o DeviceOutput) ToOutput(ctx context.Context) pulumix.Output[*Device]

type DevicePortOverride

type DevicePortOverride struct {
	// Number of ports in the aggregate.
	AggregateNumPorts *int `pulumi:"aggregateNumPorts"`
	// Human-readable name of the port.
	Name *string `pulumi:"name"`
	// Switch port number.
	Number int `pulumi:"number"`
	// Operating mode of the port, valid values are `switch`, `mirror`, and `aggregate`. Defaults to `switch`.
	OpMode *string `pulumi:"opMode"`
	// ID of the Port Profile used on this port.
	PortProfileId *string `pulumi:"portProfileId"`
}

type DevicePortOverrideArgs

type DevicePortOverrideArgs struct {
	// Number of ports in the aggregate.
	AggregateNumPorts pulumi.IntPtrInput `pulumi:"aggregateNumPorts"`
	// Human-readable name of the port.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Switch port number.
	Number pulumi.IntInput `pulumi:"number"`
	// Operating mode of the port, valid values are `switch`, `mirror`, and `aggregate`. Defaults to `switch`.
	OpMode pulumi.StringPtrInput `pulumi:"opMode"`
	// ID of the Port Profile used on this port.
	PortProfileId pulumi.StringPtrInput `pulumi:"portProfileId"`
}

func (DevicePortOverrideArgs) ElementType

func (DevicePortOverrideArgs) ElementType() reflect.Type

func (DevicePortOverrideArgs) ToDevicePortOverrideOutput

func (i DevicePortOverrideArgs) ToDevicePortOverrideOutput() DevicePortOverrideOutput

func (DevicePortOverrideArgs) ToDevicePortOverrideOutputWithContext

func (i DevicePortOverrideArgs) ToDevicePortOverrideOutputWithContext(ctx context.Context) DevicePortOverrideOutput

func (DevicePortOverrideArgs) ToOutput

type DevicePortOverrideArray

type DevicePortOverrideArray []DevicePortOverrideInput

func (DevicePortOverrideArray) ElementType

func (DevicePortOverrideArray) ElementType() reflect.Type

func (DevicePortOverrideArray) ToDevicePortOverrideArrayOutput

func (i DevicePortOverrideArray) ToDevicePortOverrideArrayOutput() DevicePortOverrideArrayOutput

func (DevicePortOverrideArray) ToDevicePortOverrideArrayOutputWithContext

func (i DevicePortOverrideArray) ToDevicePortOverrideArrayOutputWithContext(ctx context.Context) DevicePortOverrideArrayOutput

func (DevicePortOverrideArray) ToOutput

type DevicePortOverrideArrayInput

type DevicePortOverrideArrayInput interface {
	pulumi.Input

	ToDevicePortOverrideArrayOutput() DevicePortOverrideArrayOutput
	ToDevicePortOverrideArrayOutputWithContext(context.Context) DevicePortOverrideArrayOutput
}

DevicePortOverrideArrayInput is an input type that accepts DevicePortOverrideArray and DevicePortOverrideArrayOutput values. You can construct a concrete instance of `DevicePortOverrideArrayInput` via:

DevicePortOverrideArray{ DevicePortOverrideArgs{...} }

type DevicePortOverrideArrayOutput

type DevicePortOverrideArrayOutput struct{ *pulumi.OutputState }

func (DevicePortOverrideArrayOutput) ElementType

func (DevicePortOverrideArrayOutput) Index

func (DevicePortOverrideArrayOutput) ToDevicePortOverrideArrayOutput

func (o DevicePortOverrideArrayOutput) ToDevicePortOverrideArrayOutput() DevicePortOverrideArrayOutput

func (DevicePortOverrideArrayOutput) ToDevicePortOverrideArrayOutputWithContext

func (o DevicePortOverrideArrayOutput) ToDevicePortOverrideArrayOutputWithContext(ctx context.Context) DevicePortOverrideArrayOutput

func (DevicePortOverrideArrayOutput) ToOutput

type DevicePortOverrideInput

type DevicePortOverrideInput interface {
	pulumi.Input

	ToDevicePortOverrideOutput() DevicePortOverrideOutput
	ToDevicePortOverrideOutputWithContext(context.Context) DevicePortOverrideOutput
}

DevicePortOverrideInput is an input type that accepts DevicePortOverrideArgs and DevicePortOverrideOutput values. You can construct a concrete instance of `DevicePortOverrideInput` via:

DevicePortOverrideArgs{...}

type DevicePortOverrideOutput

type DevicePortOverrideOutput struct{ *pulumi.OutputState }

func (DevicePortOverrideOutput) AggregateNumPorts

func (o DevicePortOverrideOutput) AggregateNumPorts() pulumi.IntPtrOutput

Number of ports in the aggregate.

func (DevicePortOverrideOutput) ElementType

func (DevicePortOverrideOutput) ElementType() reflect.Type

func (DevicePortOverrideOutput) Name

Human-readable name of the port.

func (DevicePortOverrideOutput) Number

Switch port number.

func (DevicePortOverrideOutput) OpMode

Operating mode of the port, valid values are `switch`, `mirror`, and `aggregate`. Defaults to `switch`.

func (DevicePortOverrideOutput) PortProfileId

ID of the Port Profile used on this port.

func (DevicePortOverrideOutput) ToDevicePortOverrideOutput

func (o DevicePortOverrideOutput) ToDevicePortOverrideOutput() DevicePortOverrideOutput

func (DevicePortOverrideOutput) ToDevicePortOverrideOutputWithContext

func (o DevicePortOverrideOutput) ToDevicePortOverrideOutputWithContext(ctx context.Context) DevicePortOverrideOutput

func (DevicePortOverrideOutput) ToOutput

type DeviceState

type DeviceState struct {
	// Specifies whether this resource should tell the controller to adopt the device on create. Defaults to `true`.
	AllowAdoption pulumi.BoolPtrInput
	// Specifies whether this device should be disabled.
	Disabled pulumi.BoolPtrInput
	// Specifies whether this resource should tell the controller to forget the device on destroy. Defaults to `true`.
	ForgetOnDestroy pulumi.BoolPtrInput
	// The MAC address of the device. This can be specified so that the provider can take control of a device (since devices are created through adoption).
	Mac pulumi.StringPtrInput
	// The name of the device.
	Name pulumi.StringPtrInput
	// Settings overrides for specific switch ports.
	PortOverrides DevicePortOverrideArrayInput
	// The name of the site to associate the device with.
	Site pulumi.StringPtrInput
}

func (DeviceState) ElementType

func (DeviceState) ElementType() reflect.Type

type DynamicDNS

type DynamicDNS struct {
	pulumi.CustomResourceState

	// The host name to update in the dynamic DNS service.
	HostName pulumi.StringOutput `pulumi:"hostName"`
	// The interface for the dynamic DNS. Can be `wan` or `wan2`. Defaults to `wan`.
	Interface pulumi.StringPtrOutput `pulumi:"interface"`
	// The server for the dynamic DNS service.
	Login pulumi.StringPtrOutput `pulumi:"login"`
	// The server for the dynamic DNS service.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// The server for the dynamic DNS service.
	Server pulumi.StringPtrOutput `pulumi:"server"`
	// The Dynamic DNS service provider, various values are supported (for example `dyndns`, etc.).
	Service pulumi.StringOutput `pulumi:"service"`
	// The name of the site to associate the dynamic DNS with.
	Site pulumi.StringOutput `pulumi:"site"`
}

`DynamicDNS` manages dynamic DNS settings for different providers.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := unifi.NewDynamicDNS(ctx, "test", &unifi.DynamicDNSArgs{
			Service:  pulumi.String("dyndns"),
			HostName: pulumi.String("my-network.example.com"),
			Server:   pulumi.String("domains.google.com"),
			Login:    pulumi.Any(_var.Dns_login),
			Password: pulumi.Any(_var.Dns_password),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetDynamicDNS

func GetDynamicDNS(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DynamicDNSState, opts ...pulumi.ResourceOption) (*DynamicDNS, error)

GetDynamicDNS gets an existing DynamicDNS resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDynamicDNS

func NewDynamicDNS(ctx *pulumi.Context,
	name string, args *DynamicDNSArgs, opts ...pulumi.ResourceOption) (*DynamicDNS, error)

NewDynamicDNS registers a new resource with the given unique name, arguments, and options.

func (*DynamicDNS) ElementType

func (*DynamicDNS) ElementType() reflect.Type

func (*DynamicDNS) ToDynamicDNSOutput

func (i *DynamicDNS) ToDynamicDNSOutput() DynamicDNSOutput

func (*DynamicDNS) ToDynamicDNSOutputWithContext

func (i *DynamicDNS) ToDynamicDNSOutputWithContext(ctx context.Context) DynamicDNSOutput

func (*DynamicDNS) ToOutput

func (i *DynamicDNS) ToOutput(ctx context.Context) pulumix.Output[*DynamicDNS]

type DynamicDNSArgs

type DynamicDNSArgs struct {
	// The host name to update in the dynamic DNS service.
	HostName pulumi.StringInput
	// The interface for the dynamic DNS. Can be `wan` or `wan2`. Defaults to `wan`.
	Interface pulumi.StringPtrInput
	// The server for the dynamic DNS service.
	Login pulumi.StringPtrInput
	// The server for the dynamic DNS service.
	Password pulumi.StringPtrInput
	// The server for the dynamic DNS service.
	Server pulumi.StringPtrInput
	// The Dynamic DNS service provider, various values are supported (for example `dyndns`, etc.).
	Service pulumi.StringInput
	// The name of the site to associate the dynamic DNS with.
	Site pulumi.StringPtrInput
}

The set of arguments for constructing a DynamicDNS resource.

func (DynamicDNSArgs) ElementType

func (DynamicDNSArgs) ElementType() reflect.Type

type DynamicDNSArray

type DynamicDNSArray []DynamicDNSInput

func (DynamicDNSArray) ElementType

func (DynamicDNSArray) ElementType() reflect.Type

func (DynamicDNSArray) ToDynamicDNSArrayOutput

func (i DynamicDNSArray) ToDynamicDNSArrayOutput() DynamicDNSArrayOutput

func (DynamicDNSArray) ToDynamicDNSArrayOutputWithContext

func (i DynamicDNSArray) ToDynamicDNSArrayOutputWithContext(ctx context.Context) DynamicDNSArrayOutput

func (DynamicDNSArray) ToOutput

type DynamicDNSArrayInput

type DynamicDNSArrayInput interface {
	pulumi.Input

	ToDynamicDNSArrayOutput() DynamicDNSArrayOutput
	ToDynamicDNSArrayOutputWithContext(context.Context) DynamicDNSArrayOutput
}

DynamicDNSArrayInput is an input type that accepts DynamicDNSArray and DynamicDNSArrayOutput values. You can construct a concrete instance of `DynamicDNSArrayInput` via:

DynamicDNSArray{ DynamicDNSArgs{...} }

type DynamicDNSArrayOutput

type DynamicDNSArrayOutput struct{ *pulumi.OutputState }

func (DynamicDNSArrayOutput) ElementType

func (DynamicDNSArrayOutput) ElementType() reflect.Type

func (DynamicDNSArrayOutput) Index

func (DynamicDNSArrayOutput) ToDynamicDNSArrayOutput

func (o DynamicDNSArrayOutput) ToDynamicDNSArrayOutput() DynamicDNSArrayOutput

func (DynamicDNSArrayOutput) ToDynamicDNSArrayOutputWithContext

func (o DynamicDNSArrayOutput) ToDynamicDNSArrayOutputWithContext(ctx context.Context) DynamicDNSArrayOutput

func (DynamicDNSArrayOutput) ToOutput

type DynamicDNSInput

type DynamicDNSInput interface {
	pulumi.Input

	ToDynamicDNSOutput() DynamicDNSOutput
	ToDynamicDNSOutputWithContext(ctx context.Context) DynamicDNSOutput
}

type DynamicDNSMap

type DynamicDNSMap map[string]DynamicDNSInput

func (DynamicDNSMap) ElementType

func (DynamicDNSMap) ElementType() reflect.Type

func (DynamicDNSMap) ToDynamicDNSMapOutput

func (i DynamicDNSMap) ToDynamicDNSMapOutput() DynamicDNSMapOutput

func (DynamicDNSMap) ToDynamicDNSMapOutputWithContext

func (i DynamicDNSMap) ToDynamicDNSMapOutputWithContext(ctx context.Context) DynamicDNSMapOutput

func (DynamicDNSMap) ToOutput

type DynamicDNSMapInput

type DynamicDNSMapInput interface {
	pulumi.Input

	ToDynamicDNSMapOutput() DynamicDNSMapOutput
	ToDynamicDNSMapOutputWithContext(context.Context) DynamicDNSMapOutput
}

DynamicDNSMapInput is an input type that accepts DynamicDNSMap and DynamicDNSMapOutput values. You can construct a concrete instance of `DynamicDNSMapInput` via:

DynamicDNSMap{ "key": DynamicDNSArgs{...} }

type DynamicDNSMapOutput

type DynamicDNSMapOutput struct{ *pulumi.OutputState }

func (DynamicDNSMapOutput) ElementType

func (DynamicDNSMapOutput) ElementType() reflect.Type

func (DynamicDNSMapOutput) MapIndex

func (DynamicDNSMapOutput) ToDynamicDNSMapOutput

func (o DynamicDNSMapOutput) ToDynamicDNSMapOutput() DynamicDNSMapOutput

func (DynamicDNSMapOutput) ToDynamicDNSMapOutputWithContext

func (o DynamicDNSMapOutput) ToDynamicDNSMapOutputWithContext(ctx context.Context) DynamicDNSMapOutput

func (DynamicDNSMapOutput) ToOutput

type DynamicDNSOutput

type DynamicDNSOutput struct{ *pulumi.OutputState }

func (DynamicDNSOutput) ElementType

func (DynamicDNSOutput) ElementType() reflect.Type

func (DynamicDNSOutput) HostName

func (o DynamicDNSOutput) HostName() pulumi.StringOutput

The host name to update in the dynamic DNS service.

func (DynamicDNSOutput) Interface

func (o DynamicDNSOutput) Interface() pulumi.StringPtrOutput

The interface for the dynamic DNS. Can be `wan` or `wan2`. Defaults to `wan`.

func (DynamicDNSOutput) Login

The server for the dynamic DNS service.

func (DynamicDNSOutput) Password

The server for the dynamic DNS service.

func (DynamicDNSOutput) Server

The server for the dynamic DNS service.

func (DynamicDNSOutput) Service

func (o DynamicDNSOutput) Service() pulumi.StringOutput

The Dynamic DNS service provider, various values are supported (for example `dyndns`, etc.).

func (DynamicDNSOutput) Site

The name of the site to associate the dynamic DNS with.

func (DynamicDNSOutput) ToDynamicDNSOutput

func (o DynamicDNSOutput) ToDynamicDNSOutput() DynamicDNSOutput

func (DynamicDNSOutput) ToDynamicDNSOutputWithContext

func (o DynamicDNSOutput) ToDynamicDNSOutputWithContext(ctx context.Context) DynamicDNSOutput

func (DynamicDNSOutput) ToOutput

type DynamicDNSState

type DynamicDNSState struct {
	// The host name to update in the dynamic DNS service.
	HostName pulumi.StringPtrInput
	// The interface for the dynamic DNS. Can be `wan` or `wan2`. Defaults to `wan`.
	Interface pulumi.StringPtrInput
	// The server for the dynamic DNS service.
	Login pulumi.StringPtrInput
	// The server for the dynamic DNS service.
	Password pulumi.StringPtrInput
	// The server for the dynamic DNS service.
	Server pulumi.StringPtrInput
	// The Dynamic DNS service provider, various values are supported (for example `dyndns`, etc.).
	Service pulumi.StringPtrInput
	// The name of the site to associate the dynamic DNS with.
	Site pulumi.StringPtrInput
}

func (DynamicDNSState) ElementType

func (DynamicDNSState) ElementType() reflect.Type

type GetApGroupArgs

type GetApGroupArgs struct {
	// The name of the AP group to look up, leave blank to look up the default AP group.
	Name *string `pulumi:"name"`
	// The name of the site the AP group is associated with.
	Site *string `pulumi:"site"`
}

A collection of arguments for invoking getApGroup.

type GetApGroupOutputArgs

type GetApGroupOutputArgs struct {
	// The name of the AP group to look up, leave blank to look up the default AP group.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The name of the site the AP group is associated with.
	Site pulumi.StringPtrInput `pulumi:"site"`
}

A collection of arguments for invoking getApGroup.

func (GetApGroupOutputArgs) ElementType

func (GetApGroupOutputArgs) ElementType() reflect.Type

type GetApGroupResult

type GetApGroupResult struct {
	// The ID of this AP group.
	Id string `pulumi:"id"`
	// The name of the AP group to look up, leave blank to look up the default AP group.
	Name *string `pulumi:"name"`
	// The name of the site the AP group is associated with.
	Site string `pulumi:"site"`
}

A collection of values returned by getApGroup.

func GetApGroup

func GetApGroup(ctx *pulumi.Context, args *GetApGroupArgs, opts ...pulumi.InvokeOption) (*GetApGroupResult, error)

`getApGroup` data source can be used to retrieve the ID for an AP group by name.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := unifi.GetApGroup(ctx, nil, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetApGroupResultOutput

type GetApGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getApGroup.

func (GetApGroupResultOutput) ElementType

func (GetApGroupResultOutput) ElementType() reflect.Type

func (GetApGroupResultOutput) Id

The ID of this AP group.

func (GetApGroupResultOutput) Name

The name of the AP group to look up, leave blank to look up the default AP group.

func (GetApGroupResultOutput) Site

The name of the site the AP group is associated with.

func (GetApGroupResultOutput) ToGetApGroupResultOutput

func (o GetApGroupResultOutput) ToGetApGroupResultOutput() GetApGroupResultOutput

func (GetApGroupResultOutput) ToGetApGroupResultOutputWithContext

func (o GetApGroupResultOutput) ToGetApGroupResultOutputWithContext(ctx context.Context) GetApGroupResultOutput

func (GetApGroupResultOutput) ToOutput

type LookupAccountArgs

type LookupAccountArgs struct {
	// The name of the account to look up
	Name string `pulumi:"name"`
	// The name of the site the account is associated with.
	Site *string `pulumi:"site"`
}

A collection of arguments for invoking getAccount.

type LookupAccountOutputArgs

type LookupAccountOutputArgs struct {
	// The name of the account to look up
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the site the account is associated with.
	Site pulumi.StringPtrInput `pulumi:"site"`
}

A collection of arguments for invoking getAccount.

func (LookupAccountOutputArgs) ElementType

func (LookupAccountOutputArgs) ElementType() reflect.Type

type LookupAccountResult

type LookupAccountResult struct {
	// The ID of this account.
	Id string `pulumi:"id"`
	// The name of the account to look up
	Name string `pulumi:"name"`
	// ID of the network for this account
	NetworkId string `pulumi:"networkId"`
	// The password of the account.
	Password string `pulumi:"password"`
	// The name of the site the account is associated with.
	Site string `pulumi:"site"`
	// See RFC2868 section 3.2
	TunnelMediumType int `pulumi:"tunnelMediumType"`
	// See RFC2868 section 3.1
	TunnelType int `pulumi:"tunnelType"`
}

A collection of values returned by getAccount.

func LookupAccount

func LookupAccount(ctx *pulumi.Context, args *LookupAccountArgs, opts ...pulumi.InvokeOption) (*LookupAccountResult, error)

`Account` data source can be used to retrieve RADIUS user accounts

type LookupAccountResultOutput

type LookupAccountResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAccount.

func (LookupAccountResultOutput) ElementType

func (LookupAccountResultOutput) ElementType() reflect.Type

func (LookupAccountResultOutput) Id

The ID of this account.

func (LookupAccountResultOutput) Name

The name of the account to look up

func (LookupAccountResultOutput) NetworkId

ID of the network for this account

func (LookupAccountResultOutput) Password

The password of the account.

func (LookupAccountResultOutput) Site

The name of the site the account is associated with.

func (LookupAccountResultOutput) ToLookupAccountResultOutput

func (o LookupAccountResultOutput) ToLookupAccountResultOutput() LookupAccountResultOutput

func (LookupAccountResultOutput) ToLookupAccountResultOutputWithContext

func (o LookupAccountResultOutput) ToLookupAccountResultOutputWithContext(ctx context.Context) LookupAccountResultOutput

func (LookupAccountResultOutput) ToOutput

func (LookupAccountResultOutput) TunnelMediumType

func (o LookupAccountResultOutput) TunnelMediumType() pulumi.IntOutput

See RFC2868 section 3.2

func (LookupAccountResultOutput) TunnelType

See RFC2868 section 3.1

type LookupNetworkArgs

type LookupNetworkArgs struct {
	// The ID of the network.
	Id *string `pulumi:"id"`
	// The name of the network.
	Name *string `pulumi:"name"`
	// The name of the site to associate the network with.
	Site *string `pulumi:"site"`
}

A collection of arguments for invoking getNetwork.

type LookupNetworkOutputArgs

type LookupNetworkOutputArgs struct {
	// The ID of the network.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// The name of the network.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The name of the site to associate the network with.
	Site pulumi.StringPtrInput `pulumi:"site"`
}

A collection of arguments for invoking getNetwork.

func (LookupNetworkOutputArgs) ElementType

func (LookupNetworkOutputArgs) ElementType() reflect.Type

type LookupNetworkResult

type LookupNetworkResult struct {
	// IPv4 addresses for the DNS server to be returned from the DHCP server.
	DhcpDns []string `pulumi:"dhcpDns"`
	// whether DHCP is enabled or not on this network.
	DhcpEnabled bool `pulumi:"dhcpEnabled"`
	// lease time for DHCP addresses.
	DhcpLease int `pulumi:"dhcpLease"`
	// The IPv4 address where the DHCP range of addresses starts.
	DhcpStart string `pulumi:"dhcpStart"`
	// The IPv4 address where the DHCP range of addresses stops.
	DhcpStop string `pulumi:"dhcpStop"`
	// Specifies the IPv6 addresses for the DNS server to be returned from the DHCP server. Used if `dhcpV6DnsAuto` is set to `false`.
	DhcpV6Dns []string `pulumi:"dhcpV6Dns"`
	// Specifies DNS source to propagate. If set `false` the entries in `dhcpV6Dns` are used, the upstream entries otherwise
	DhcpV6DnsAuto bool `pulumi:"dhcpV6DnsAuto"`
	// Enable stateful DHCPv6 for static configuration.
	DhcpV6Enabled bool `pulumi:"dhcpV6Enabled"`
	// Specifies the lease time for DHCPv6 addresses.
	DhcpV6Lease int `pulumi:"dhcpV6Lease"`
	// Start address of the DHCPv6 range. Used in static DHCPv6 configuration.
	DhcpV6Start string `pulumi:"dhcpV6Start"`
	// End address of the DHCPv6 range. Used in static DHCPv6 configuration.
	DhcpV6Stop string `pulumi:"dhcpV6Stop"`
	// Toggles on the DHCP boot options. will be set to true if you have dhcpd*boot*filename, and dhcpd*boot*server set.
	DhcpdBootEnabled bool `pulumi:"dhcpdBootEnabled"`
	// the file to PXE boot from on the dhcpd*boot*server.
	DhcpdBootFilename string `pulumi:"dhcpdBootFilename"`
	// IPv4 address of a TFTP server to network boot from.
	DhcpdBootServer string `pulumi:"dhcpdBootServer"`
	// The domain name of this network.
	DomainName string `pulumi:"domainName"`
	// The ID of the network.
	Id string `pulumi:"id"`
	// Specifies whether IGMP snooping is enabled or not.
	IgmpSnooping bool `pulumi:"igmpSnooping"`
	// Specifies which type of IPv6 connection to use. Must be one of either `static`, `pd`, or `none`.
	Ipv6InterfaceType string `pulumi:"ipv6InterfaceType"`
	// Specifies which WAN interface to use for IPv6 PD. Must be one of either `wan` or `wan2`.
	Ipv6PdInterface string `pulumi:"ipv6PdInterface"`
	// Specifies the IPv6 Prefix ID.
	Ipv6PdPrefixid string `pulumi:"ipv6PdPrefixid"`
	// Start address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.
	Ipv6PdStart string `pulumi:"ipv6PdStart"`
	// End address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.
	Ipv6PdStop string `pulumi:"ipv6PdStop"`
	// Specifies whether to enable router advertisements or not.
	Ipv6RaEnable bool `pulumi:"ipv6RaEnable"`
	// Lifetime in which the address can be used. Address becomes deprecated afterwards. Must be lower than or equal to `ipv6RaValidLifetime`
	Ipv6RaPreferredLifetime int `pulumi:"ipv6RaPreferredLifetime"`
	// IPv6 router advertisement priority. Must be one of either `high`, `medium`, or `low`
	Ipv6RaPriority string `pulumi:"ipv6RaPriority"`
	// Total lifetime in which the address can be used. Must be equal to or greater than `ipv6RaPreferredLifetime`.
	Ipv6RaValidLifetime int `pulumi:"ipv6RaValidLifetime"`
	// Specifies the static IPv6 subnet (when ipv6*interface*type is 'static').
	Ipv6StaticSubnet string `pulumi:"ipv6StaticSubnet"`
	// Specifies whether Multicast DNS (mDNS) is enabled or not on the network (Controller >=v7).
	MulticastDns bool `pulumi:"multicastDns"`
	// The name of the network.
	Name string `pulumi:"name"`
	// The group of the network.
	NetworkGroup string `pulumi:"networkGroup"`
	// The purpose of the network. One of `corporate`, `guest`, `wan`, or `vlan-only`.
	Purpose string `pulumi:"purpose"`
	// The name of the site to associate the network with.
	Site string `pulumi:"site"`
	// The subnet of the network (CIDR address).
	Subnet string `pulumi:"subnet"`
	// The VLAN ID of the network.
	VlanId int `pulumi:"vlanId"`
	// Specifies the IPv6 prefix size to request from ISP. Must be a number between 48 and 64.
	WanDhcpV6PdSize int `pulumi:"wanDhcpV6PdSize"`
	// DNS servers IPs of the WAN.
	WanDns []string `pulumi:"wanDns"`
	// Specifies the WAN egress quality of service.
	WanEgressQos int `pulumi:"wanEgressQos"`
	// The IPv4 gateway of the WAN.
	WanGateway string `pulumi:"wanGateway"`
	// The IPv6 gateway of the WAN.
	WanGatewayV6 string `pulumi:"wanGatewayV6"`
	// The IPv4 address of the WAN.
	WanIp string `pulumi:"wanIp"`
	// The IPv6 address of the WAN.
	WanIpv6 string `pulumi:"wanIpv6"`
	// The IPv4 netmask of the WAN.
	WanNetmask string `pulumi:"wanNetmask"`
	// Specifies the WAN network group. One of either `WAN`, `WAN2` or `WAN_LTE_FAILOVER`.
	WanNetworkgroup string `pulumi:"wanNetworkgroup"`
	// The IPv6 prefix length of the WAN. Must be between 1 and 128.
	WanPrefixlen int `pulumi:"wanPrefixlen"`
	// Specifies the IPV4 WAN connection type. One of either `disabled`, `static`, `dhcp`, or `pppoe`.
	WanType string `pulumi:"wanType"`
	// Specifies the IPV6 WAN connection type. Must be one of either `disabled`, `static`, or `dhcpv6`.
	WanTypeV6 string `pulumi:"wanTypeV6"`
	// Specifies the IPV4 WAN username.
	WanUsername string `pulumi:"wanUsername"`
	// Specifies the IPV4 WAN password.
	XWanPassword string `pulumi:"xWanPassword"`
}

A collection of values returned by getNetwork.

func LookupNetwork

func LookupNetwork(ctx *pulumi.Context, args *LookupNetworkArgs, opts ...pulumi.InvokeOption) (*LookupNetworkResult, error)

`Network` data source can be used to retrieve settings for a network by name or ID.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi/iam"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := unifi.LookupNetwork(ctx, &unifi.LookupNetworkArgs{
			Name: pulumi.StringRef("Default"),
		}, nil)
		if err != nil {
			return err
		}
		myDevice, err := iam.LookupUser(ctx, &iam.LookupUserArgs{
			Mac: "01:23:45:67:89:ab",
		}, nil)
		if err != nil {
			return err
		}
		_, err = unifi.LookupNetwork(ctx, &unifi.LookupNetworkArgs{
			Id: pulumi.StringRef(myDevice.NetworkId),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupNetworkResultOutput

type LookupNetworkResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getNetwork.

func (LookupNetworkResultOutput) DhcpDns

IPv4 addresses for the DNS server to be returned from the DHCP server.

func (LookupNetworkResultOutput) DhcpEnabled

whether DHCP is enabled or not on this network.

func (LookupNetworkResultOutput) DhcpLease

lease time for DHCP addresses.

func (LookupNetworkResultOutput) DhcpStart

The IPv4 address where the DHCP range of addresses starts.

func (LookupNetworkResultOutput) DhcpStop

The IPv4 address where the DHCP range of addresses stops.

func (LookupNetworkResultOutput) DhcpV6Dns

Specifies the IPv6 addresses for the DNS server to be returned from the DHCP server. Used if `dhcpV6DnsAuto` is set to `false`.

func (LookupNetworkResultOutput) DhcpV6DnsAuto

func (o LookupNetworkResultOutput) DhcpV6DnsAuto() pulumi.BoolOutput

Specifies DNS source to propagate. If set `false` the entries in `dhcpV6Dns` are used, the upstream entries otherwise

func (LookupNetworkResultOutput) DhcpV6Enabled

func (o LookupNetworkResultOutput) DhcpV6Enabled() pulumi.BoolOutput

Enable stateful DHCPv6 for static configuration.

func (LookupNetworkResultOutput) DhcpV6Lease

func (o LookupNetworkResultOutput) DhcpV6Lease() pulumi.IntOutput

Specifies the lease time for DHCPv6 addresses.

func (LookupNetworkResultOutput) DhcpV6Start

Start address of the DHCPv6 range. Used in static DHCPv6 configuration.

func (LookupNetworkResultOutput) DhcpV6Stop

End address of the DHCPv6 range. Used in static DHCPv6 configuration.

func (LookupNetworkResultOutput) DhcpdBootEnabled

func (o LookupNetworkResultOutput) DhcpdBootEnabled() pulumi.BoolOutput

Toggles on the DHCP boot options. will be set to true if you have dhcpd*boot*filename, and dhcpd*boot*server set.

func (LookupNetworkResultOutput) DhcpdBootFilename

func (o LookupNetworkResultOutput) DhcpdBootFilename() pulumi.StringOutput

the file to PXE boot from on the dhcpd*boot*server.

func (LookupNetworkResultOutput) DhcpdBootServer

func (o LookupNetworkResultOutput) DhcpdBootServer() pulumi.StringOutput

IPv4 address of a TFTP server to network boot from.

func (LookupNetworkResultOutput) DomainName

The domain name of this network.

func (LookupNetworkResultOutput) ElementType

func (LookupNetworkResultOutput) ElementType() reflect.Type

func (LookupNetworkResultOutput) Id

The ID of the network.

func (LookupNetworkResultOutput) IgmpSnooping

func (o LookupNetworkResultOutput) IgmpSnooping() pulumi.BoolOutput

Specifies whether IGMP snooping is enabled or not.

func (LookupNetworkResultOutput) Ipv6InterfaceType

func (o LookupNetworkResultOutput) Ipv6InterfaceType() pulumi.StringOutput

Specifies which type of IPv6 connection to use. Must be one of either `static`, `pd`, or `none`.

func (LookupNetworkResultOutput) Ipv6PdInterface

func (o LookupNetworkResultOutput) Ipv6PdInterface() pulumi.StringOutput

Specifies which WAN interface to use for IPv6 PD. Must be one of either `wan` or `wan2`.

func (LookupNetworkResultOutput) Ipv6PdPrefixid

func (o LookupNetworkResultOutput) Ipv6PdPrefixid() pulumi.StringOutput

Specifies the IPv6 Prefix ID.

func (LookupNetworkResultOutput) Ipv6PdStart

Start address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.

func (LookupNetworkResultOutput) Ipv6PdStop

End address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.

func (LookupNetworkResultOutput) Ipv6RaEnable

func (o LookupNetworkResultOutput) Ipv6RaEnable() pulumi.BoolOutput

Specifies whether to enable router advertisements or not.

func (LookupNetworkResultOutput) Ipv6RaPreferredLifetime

func (o LookupNetworkResultOutput) Ipv6RaPreferredLifetime() pulumi.IntOutput

Lifetime in which the address can be used. Address becomes deprecated afterwards. Must be lower than or equal to `ipv6RaValidLifetime`

func (LookupNetworkResultOutput) Ipv6RaPriority

func (o LookupNetworkResultOutput) Ipv6RaPriority() pulumi.StringOutput

IPv6 router advertisement priority. Must be one of either `high`, `medium`, or `low`

func (LookupNetworkResultOutput) Ipv6RaValidLifetime

func (o LookupNetworkResultOutput) Ipv6RaValidLifetime() pulumi.IntOutput

Total lifetime in which the address can be used. Must be equal to or greater than `ipv6RaPreferredLifetime`.

func (LookupNetworkResultOutput) Ipv6StaticSubnet

func (o LookupNetworkResultOutput) Ipv6StaticSubnet() pulumi.StringOutput

Specifies the static IPv6 subnet (when ipv6*interface*type is 'static').

func (LookupNetworkResultOutput) MulticastDns

func (o LookupNetworkResultOutput) MulticastDns() pulumi.BoolOutput

Specifies whether Multicast DNS (mDNS) is enabled or not on the network (Controller >=v7).

func (LookupNetworkResultOutput) Name

The name of the network.

func (LookupNetworkResultOutput) NetworkGroup

The group of the network.

func (LookupNetworkResultOutput) Purpose

The purpose of the network. One of `corporate`, `guest`, `wan`, or `vlan-only`.

func (LookupNetworkResultOutput) Site

The name of the site to associate the network with.

func (LookupNetworkResultOutput) Subnet

The subnet of the network (CIDR address).

func (LookupNetworkResultOutput) ToLookupNetworkResultOutput

func (o LookupNetworkResultOutput) ToLookupNetworkResultOutput() LookupNetworkResultOutput

func (LookupNetworkResultOutput) ToLookupNetworkResultOutputWithContext

func (o LookupNetworkResultOutput) ToLookupNetworkResultOutputWithContext(ctx context.Context) LookupNetworkResultOutput

func (LookupNetworkResultOutput) ToOutput

func (LookupNetworkResultOutput) VlanId

The VLAN ID of the network.

func (LookupNetworkResultOutput) WanDhcpV6PdSize

func (o LookupNetworkResultOutput) WanDhcpV6PdSize() pulumi.IntOutput

Specifies the IPv6 prefix size to request from ISP. Must be a number between 48 and 64.

func (LookupNetworkResultOutput) WanDns

DNS servers IPs of the WAN.

func (LookupNetworkResultOutput) WanEgressQos

func (o LookupNetworkResultOutput) WanEgressQos() pulumi.IntOutput

Specifies the WAN egress quality of service.

func (LookupNetworkResultOutput) WanGateway

The IPv4 gateway of the WAN.

func (LookupNetworkResultOutput) WanGatewayV6

The IPv6 gateway of the WAN.

func (LookupNetworkResultOutput) WanIp

The IPv4 address of the WAN.

func (LookupNetworkResultOutput) WanIpv6

The IPv6 address of the WAN.

func (LookupNetworkResultOutput) WanNetmask

The IPv4 netmask of the WAN.

func (LookupNetworkResultOutput) WanNetworkgroup

func (o LookupNetworkResultOutput) WanNetworkgroup() pulumi.StringOutput

Specifies the WAN network group. One of either `WAN`, `WAN2` or `WAN_LTE_FAILOVER`.

func (LookupNetworkResultOutput) WanPrefixlen

func (o LookupNetworkResultOutput) WanPrefixlen() pulumi.IntOutput

The IPv6 prefix length of the WAN. Must be between 1 and 128.

func (LookupNetworkResultOutput) WanType

Specifies the IPV4 WAN connection type. One of either `disabled`, `static`, `dhcp`, or `pppoe`.

func (LookupNetworkResultOutput) WanTypeV6

Specifies the IPV6 WAN connection type. Must be one of either `disabled`, `static`, or `dhcpv6`.

func (LookupNetworkResultOutput) WanUsername

Specifies the IPV4 WAN username.

func (LookupNetworkResultOutput) XWanPassword

Specifies the IPV4 WAN password.

type LookupRadiusProfileArgs

type LookupRadiusProfileArgs struct {
	// The name of the RADIUS profile to look up. Defaults to `Default`.
	Name *string `pulumi:"name"`
	// The name of the site the RADIUS profile is associated with.
	Site *string `pulumi:"site"`
}

A collection of arguments for invoking getRadiusProfile.

type LookupRadiusProfileOutputArgs

type LookupRadiusProfileOutputArgs struct {
	// The name of the RADIUS profile to look up. Defaults to `Default`.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The name of the site the RADIUS profile is associated with.
	Site pulumi.StringPtrInput `pulumi:"site"`
}

A collection of arguments for invoking getRadiusProfile.

func (LookupRadiusProfileOutputArgs) ElementType

type LookupRadiusProfileResult

type LookupRadiusProfileResult struct {
	// The ID of this AP group.
	Id string `pulumi:"id"`
	// The name of the RADIUS profile to look up. Defaults to `Default`.
	Name *string `pulumi:"name"`
	// The name of the site the RADIUS profile is associated with.
	Site string `pulumi:"site"`
}

A collection of values returned by getRadiusProfile.

func LookupRadiusProfile

func LookupRadiusProfile(ctx *pulumi.Context, args *LookupRadiusProfileArgs, opts ...pulumi.InvokeOption) (*LookupRadiusProfileResult, error)

`RadiusProfile` data source can be used to retrieve the ID for a RADIUS profile by name.

type LookupRadiusProfileResultOutput

type LookupRadiusProfileResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getRadiusProfile.

func (LookupRadiusProfileResultOutput) ElementType

func (LookupRadiusProfileResultOutput) Id

The ID of this AP group.

func (LookupRadiusProfileResultOutput) Name

The name of the RADIUS profile to look up. Defaults to `Default`.

func (LookupRadiusProfileResultOutput) Site

The name of the site the RADIUS profile is associated with.

func (LookupRadiusProfileResultOutput) ToLookupRadiusProfileResultOutput

func (o LookupRadiusProfileResultOutput) ToLookupRadiusProfileResultOutput() LookupRadiusProfileResultOutput

func (LookupRadiusProfileResultOutput) ToLookupRadiusProfileResultOutputWithContext

func (o LookupRadiusProfileResultOutput) ToLookupRadiusProfileResultOutputWithContext(ctx context.Context) LookupRadiusProfileResultOutput

func (LookupRadiusProfileResultOutput) ToOutput

type Network

type Network struct {
	pulumi.CustomResourceState

	// Specifies the IPv4 addresses for the DNS server to be returned from the DHCP server. Leave blank to disable this feature.
	DhcpDns pulumi.StringArrayOutput `pulumi:"dhcpDns"`
	// Specifies whether DHCP is enabled or not on this network.
	DhcpEnabled pulumi.BoolPtrOutput `pulumi:"dhcpEnabled"`
	// Specifies the lease time for DHCP addresses in seconds. Defaults to `86400`.
	DhcpLease pulumi.IntPtrOutput `pulumi:"dhcpLease"`
	// Specifies whether DHCP relay is enabled or not on this network.
	DhcpRelayEnabled pulumi.BoolPtrOutput `pulumi:"dhcpRelayEnabled"`
	// The IPv4 address where the DHCP range of addresses starts.
	DhcpStart pulumi.StringPtrOutput `pulumi:"dhcpStart"`
	// The IPv4 address where the DHCP range of addresses stops.
	DhcpStop pulumi.StringPtrOutput `pulumi:"dhcpStop"`
	// Specifies the IPv6 addresses for the DNS server to be returned from the DHCP server. Used if `dhcpV6DnsAuto` is set to `false`.
	DhcpV6Dns pulumi.StringArrayOutput `pulumi:"dhcpV6Dns"`
	// Specifies DNS source to propagate. If set `false` the entries in `dhcpV6Dns` are used, the upstream entries otherwise Defaults to `true`.
	DhcpV6DnsAuto pulumi.BoolPtrOutput `pulumi:"dhcpV6DnsAuto"`
	// Enable stateful DHCPv6 for static configuration.
	DhcpV6Enabled pulumi.BoolPtrOutput `pulumi:"dhcpV6Enabled"`
	// Specifies the lease time for DHCPv6 addresses in seconds. Defaults to `86400`.
	DhcpV6Lease pulumi.IntPtrOutput `pulumi:"dhcpV6Lease"`
	// Start address of the DHCPv6 range. Used in static DHCPv6 configuration.
	DhcpV6Start pulumi.StringPtrOutput `pulumi:"dhcpV6Start"`
	// End address of the DHCPv6 range. Used in static DHCPv6 configuration.
	DhcpV6Stop pulumi.StringPtrOutput `pulumi:"dhcpV6Stop"`
	// Toggles on the DHCP boot options. Should be set to true when you want to have dhcpd*boot*filename, and dhcpd*boot*server to take effect.
	DhcpdBootEnabled pulumi.BoolPtrOutput `pulumi:"dhcpdBootEnabled"`
	// Specifies the file to PXE boot from on the dhcpd*boot*server.
	DhcpdBootFilename pulumi.StringPtrOutput `pulumi:"dhcpdBootFilename"`
	// Specifies the IPv4 address of a TFTP server to network boot from.
	DhcpdBootServer pulumi.StringPtrOutput `pulumi:"dhcpdBootServer"`
	// The domain name of this network.
	DomainName pulumi.StringPtrOutput `pulumi:"domainName"`
	// Specifies whether IGMP snooping is enabled or not.
	IgmpSnooping pulumi.BoolPtrOutput `pulumi:"igmpSnooping"`
	// Specifies whether this network should be allowed to access the internet or not. Defaults to `true`.
	InternetAccessEnabled pulumi.BoolPtrOutput `pulumi:"internetAccessEnabled"`
	// Specifies whether this network should be allowed to access other local networks or not. Defaults to `true`.
	IntraNetworkAccessEnabled pulumi.BoolPtrOutput `pulumi:"intraNetworkAccessEnabled"`
	// Specifies which type of IPv6 connection to use. Must be one of either `static`, `pd`, or `none`. Defaults to `none`.
	Ipv6InterfaceType pulumi.StringPtrOutput `pulumi:"ipv6InterfaceType"`
	// Specifies which WAN interface to use for IPv6 PD. Must be one of either `wan` or `wan2`.
	Ipv6PdInterface pulumi.StringPtrOutput `pulumi:"ipv6PdInterface"`
	// Specifies the IPv6 Prefix ID.
	Ipv6PdPrefixid pulumi.StringPtrOutput `pulumi:"ipv6PdPrefixid"`
	// Start address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.
	Ipv6PdStart pulumi.StringPtrOutput `pulumi:"ipv6PdStart"`
	// End address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.
	Ipv6PdStop pulumi.StringPtrOutput `pulumi:"ipv6PdStop"`
	// Specifies whether to enable router advertisements or not.
	Ipv6RaEnable pulumi.BoolPtrOutput `pulumi:"ipv6RaEnable"`
	// Lifetime in which the address can be used. Address becomes deprecated afterwards. Must be lower than or equal to `ipv6RaValidLifetime` Defaults to `14400`.
	Ipv6RaPreferredLifetime pulumi.IntPtrOutput `pulumi:"ipv6RaPreferredLifetime"`
	// IPv6 router advertisement priority. Must be one of either `high`, `medium`, or `low`
	Ipv6RaPriority pulumi.StringPtrOutput `pulumi:"ipv6RaPriority"`
	// Total lifetime in which the address can be used. Must be equal to or greater than `ipv6RaPreferredLifetime`. Defaults to `86400`.
	Ipv6RaValidLifetime pulumi.IntPtrOutput `pulumi:"ipv6RaValidLifetime"`
	// Specifies the static IPv6 subnet when `ipv6InterfaceType` is 'static'.
	Ipv6StaticSubnet pulumi.StringPtrOutput `pulumi:"ipv6StaticSubnet"`
	// Specifies whether Multicast DNS (mDNS) is enabled or not on the network (Controller >=v7).
	MulticastDns pulumi.BoolPtrOutput `pulumi:"multicastDns"`
	// The name of the network.
	Name pulumi.StringOutput `pulumi:"name"`
	// The group of the network. Defaults to `LAN`.
	NetworkGroup pulumi.StringPtrOutput `pulumi:"networkGroup"`
	// The purpose of the network. Must be one of `corporate`, `guest`, `wan`, or `vlan-only`.
	Purpose pulumi.StringOutput `pulumi:"purpose"`
	// The name of the site to associate the network with.
	Site pulumi.StringOutput `pulumi:"site"`
	// The subnet of the network. Must be a valid CIDR address.
	Subnet pulumi.StringPtrOutput `pulumi:"subnet"`
	// The VLAN ID of the network.
	VlanId pulumi.IntPtrOutput `pulumi:"vlanId"`
	// Specifies the IPv6 prefix size to request from ISP. Must be between 48 and 64.
	WanDhcpV6PdSize pulumi.IntPtrOutput `pulumi:"wanDhcpV6PdSize"`
	// DNS servers IPs of the WAN.
	WanDns pulumi.StringArrayOutput `pulumi:"wanDns"`
	// Specifies the WAN egress quality of service. Defaults to `0`.
	WanEgressQos pulumi.IntPtrOutput `pulumi:"wanEgressQos"`
	// The IPv4 gateway of the WAN.
	WanGateway pulumi.StringPtrOutput `pulumi:"wanGateway"`
	// The IPv6 gateway of the WAN.
	WanGatewayV6 pulumi.StringPtrOutput `pulumi:"wanGatewayV6"`
	// The IPv4 address of the WAN.
	WanIp pulumi.StringPtrOutput `pulumi:"wanIp"`
	// The IPv6 address of the WAN.
	WanIpv6 pulumi.StringPtrOutput `pulumi:"wanIpv6"`
	// The IPv4 netmask of the WAN.
	WanNetmask pulumi.StringPtrOutput `pulumi:"wanNetmask"`
	// Specifies the WAN network group. Must be one of either `WAN`, `WAN2` or `WAN_LTE_FAILOVER`.
	WanNetworkgroup pulumi.StringPtrOutput `pulumi:"wanNetworkgroup"`
	// The IPv6 prefix length of the WAN. Must be between 1 and 128.
	WanPrefixlen pulumi.IntPtrOutput `pulumi:"wanPrefixlen"`
	// Specifies the IPV4 WAN connection type. Must be one of either `disabled`, `static`, `dhcp`, or `pppoe`.
	WanType pulumi.StringPtrOutput `pulumi:"wanType"`
	// Specifies the IPV6 WAN connection type. Must be one of either `disabled`, `static`, or `dhcpv6`.
	WanTypeV6 pulumi.StringPtrOutput `pulumi:"wanTypeV6"`
	// Specifies the IPV4 WAN username.
	WanUsername pulumi.StringPtrOutput `pulumi:"wanUsername"`
	// Specifies the IPV4 WAN password.
	XWanPassword pulumi.StringPtrOutput `pulumi:"xWanPassword"`
}

`Network` manages WAN/LAN/VLAN networks.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		vlanId := float64(10)
		if param := cfg.GetFloat64("vlanId"); param != 0 {
			vlanId = param
		}
		_, err := unifi.NewNetwork(ctx, "vlan", &unifi.NetworkArgs{
			Purpose:     pulumi.String("corporate"),
			Subnet:      pulumi.String("10.0.0.1/24"),
			VlanId:      pulumi.Float64(vlanId),
			DhcpStart:   pulumi.String("10.0.0.6"),
			DhcpStop:    pulumi.String("10.0.0.254"),
			DhcpEnabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = unifi.NewNetwork(ctx, "wan", &unifi.NetworkArgs{
			Purpose:         pulumi.String("wan"),
			WanNetworkgroup: pulumi.String("WAN"),
			WanType:         pulumi.String("pppoe"),
			WanIp:           pulumi.String("192.168.1.1"),
			WanEgressQos:    pulumi.Int(1),
			WanUsername:     pulumi.String("username"),
			XWanPassword:    pulumi.String("password"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

import from provider configured site

```sh

$ pulumi import unifi:index/network:Network mynetwork 5dc28e5e9106d105bdc87217

```

import from another site

```sh

$ pulumi import unifi:index/network:Network mynetwork bfa2l6i7:5dc28e5e9106d105bdc87217

```

import network by name

```sh

$ pulumi import unifi:index/network:Network mynetwork name=LAN

```

func GetNetwork

func GetNetwork(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkState, opts ...pulumi.ResourceOption) (*Network, error)

GetNetwork gets an existing Network resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNetwork

func NewNetwork(ctx *pulumi.Context,
	name string, args *NetworkArgs, opts ...pulumi.ResourceOption) (*Network, error)

NewNetwork registers a new resource with the given unique name, arguments, and options.

func (*Network) ElementType

func (*Network) ElementType() reflect.Type

func (*Network) ToNetworkOutput

func (i *Network) ToNetworkOutput() NetworkOutput

func (*Network) ToNetworkOutputWithContext

func (i *Network) ToNetworkOutputWithContext(ctx context.Context) NetworkOutput

func (*Network) ToOutput

func (i *Network) ToOutput(ctx context.Context) pulumix.Output[*Network]

type NetworkArgs

type NetworkArgs struct {
	// Specifies the IPv4 addresses for the DNS server to be returned from the DHCP server. Leave blank to disable this feature.
	DhcpDns pulumi.StringArrayInput
	// Specifies whether DHCP is enabled or not on this network.
	DhcpEnabled pulumi.BoolPtrInput
	// Specifies the lease time for DHCP addresses in seconds. Defaults to `86400`.
	DhcpLease pulumi.IntPtrInput
	// Specifies whether DHCP relay is enabled or not on this network.
	DhcpRelayEnabled pulumi.BoolPtrInput
	// The IPv4 address where the DHCP range of addresses starts.
	DhcpStart pulumi.StringPtrInput
	// The IPv4 address where the DHCP range of addresses stops.
	DhcpStop pulumi.StringPtrInput
	// Specifies the IPv6 addresses for the DNS server to be returned from the DHCP server. Used if `dhcpV6DnsAuto` is set to `false`.
	DhcpV6Dns pulumi.StringArrayInput
	// Specifies DNS source to propagate. If set `false` the entries in `dhcpV6Dns` are used, the upstream entries otherwise Defaults to `true`.
	DhcpV6DnsAuto pulumi.BoolPtrInput
	// Enable stateful DHCPv6 for static configuration.
	DhcpV6Enabled pulumi.BoolPtrInput
	// Specifies the lease time for DHCPv6 addresses in seconds. Defaults to `86400`.
	DhcpV6Lease pulumi.IntPtrInput
	// Start address of the DHCPv6 range. Used in static DHCPv6 configuration.
	DhcpV6Start pulumi.StringPtrInput
	// End address of the DHCPv6 range. Used in static DHCPv6 configuration.
	DhcpV6Stop pulumi.StringPtrInput
	// Toggles on the DHCP boot options. Should be set to true when you want to have dhcpd*boot*filename, and dhcpd*boot*server to take effect.
	DhcpdBootEnabled pulumi.BoolPtrInput
	// Specifies the file to PXE boot from on the dhcpd*boot*server.
	DhcpdBootFilename pulumi.StringPtrInput
	// Specifies the IPv4 address of a TFTP server to network boot from.
	DhcpdBootServer pulumi.StringPtrInput
	// The domain name of this network.
	DomainName pulumi.StringPtrInput
	// Specifies whether IGMP snooping is enabled or not.
	IgmpSnooping pulumi.BoolPtrInput
	// Specifies whether this network should be allowed to access the internet or not. Defaults to `true`.
	InternetAccessEnabled pulumi.BoolPtrInput
	// Specifies whether this network should be allowed to access other local networks or not. Defaults to `true`.
	IntraNetworkAccessEnabled pulumi.BoolPtrInput
	// Specifies which type of IPv6 connection to use. Must be one of either `static`, `pd`, or `none`. Defaults to `none`.
	Ipv6InterfaceType pulumi.StringPtrInput
	// Specifies which WAN interface to use for IPv6 PD. Must be one of either `wan` or `wan2`.
	Ipv6PdInterface pulumi.StringPtrInput
	// Specifies the IPv6 Prefix ID.
	Ipv6PdPrefixid pulumi.StringPtrInput
	// Start address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.
	Ipv6PdStart pulumi.StringPtrInput
	// End address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.
	Ipv6PdStop pulumi.StringPtrInput
	// Specifies whether to enable router advertisements or not.
	Ipv6RaEnable pulumi.BoolPtrInput
	// Lifetime in which the address can be used. Address becomes deprecated afterwards. Must be lower than or equal to `ipv6RaValidLifetime` Defaults to `14400`.
	Ipv6RaPreferredLifetime pulumi.IntPtrInput
	// IPv6 router advertisement priority. Must be one of either `high`, `medium`, or `low`
	Ipv6RaPriority pulumi.StringPtrInput
	// Total lifetime in which the address can be used. Must be equal to or greater than `ipv6RaPreferredLifetime`. Defaults to `86400`.
	Ipv6RaValidLifetime pulumi.IntPtrInput
	// Specifies the static IPv6 subnet when `ipv6InterfaceType` is 'static'.
	Ipv6StaticSubnet pulumi.StringPtrInput
	// Specifies whether Multicast DNS (mDNS) is enabled or not on the network (Controller >=v7).
	MulticastDns pulumi.BoolPtrInput
	// The name of the network.
	Name pulumi.StringPtrInput
	// The group of the network. Defaults to `LAN`.
	NetworkGroup pulumi.StringPtrInput
	// The purpose of the network. Must be one of `corporate`, `guest`, `wan`, or `vlan-only`.
	Purpose pulumi.StringInput
	// The name of the site to associate the network with.
	Site pulumi.StringPtrInput
	// The subnet of the network. Must be a valid CIDR address.
	Subnet pulumi.StringPtrInput
	// The VLAN ID of the network.
	VlanId pulumi.IntPtrInput
	// Specifies the IPv6 prefix size to request from ISP. Must be between 48 and 64.
	WanDhcpV6PdSize pulumi.IntPtrInput
	// DNS servers IPs of the WAN.
	WanDns pulumi.StringArrayInput
	// Specifies the WAN egress quality of service. Defaults to `0`.
	WanEgressQos pulumi.IntPtrInput
	// The IPv4 gateway of the WAN.
	WanGateway pulumi.StringPtrInput
	// The IPv6 gateway of the WAN.
	WanGatewayV6 pulumi.StringPtrInput
	// The IPv4 address of the WAN.
	WanIp pulumi.StringPtrInput
	// The IPv6 address of the WAN.
	WanIpv6 pulumi.StringPtrInput
	// The IPv4 netmask of the WAN.
	WanNetmask pulumi.StringPtrInput
	// Specifies the WAN network group. Must be one of either `WAN`, `WAN2` or `WAN_LTE_FAILOVER`.
	WanNetworkgroup pulumi.StringPtrInput
	// The IPv6 prefix length of the WAN. Must be between 1 and 128.
	WanPrefixlen pulumi.IntPtrInput
	// Specifies the IPV4 WAN connection type. Must be one of either `disabled`, `static`, `dhcp`, or `pppoe`.
	WanType pulumi.StringPtrInput
	// Specifies the IPV6 WAN connection type. Must be one of either `disabled`, `static`, or `dhcpv6`.
	WanTypeV6 pulumi.StringPtrInput
	// Specifies the IPV4 WAN username.
	WanUsername pulumi.StringPtrInput
	// Specifies the IPV4 WAN password.
	XWanPassword pulumi.StringPtrInput
}

The set of arguments for constructing a Network resource.

func (NetworkArgs) ElementType

func (NetworkArgs) ElementType() reflect.Type

type NetworkArray

type NetworkArray []NetworkInput

func (NetworkArray) ElementType

func (NetworkArray) ElementType() reflect.Type

func (NetworkArray) ToNetworkArrayOutput

func (i NetworkArray) ToNetworkArrayOutput() NetworkArrayOutput

func (NetworkArray) ToNetworkArrayOutputWithContext

func (i NetworkArray) ToNetworkArrayOutputWithContext(ctx context.Context) NetworkArrayOutput

func (NetworkArray) ToOutput

func (i NetworkArray) ToOutput(ctx context.Context) pulumix.Output[[]*Network]

type NetworkArrayInput

type NetworkArrayInput interface {
	pulumi.Input

	ToNetworkArrayOutput() NetworkArrayOutput
	ToNetworkArrayOutputWithContext(context.Context) NetworkArrayOutput
}

NetworkArrayInput is an input type that accepts NetworkArray and NetworkArrayOutput values. You can construct a concrete instance of `NetworkArrayInput` via:

NetworkArray{ NetworkArgs{...} }

type NetworkArrayOutput

type NetworkArrayOutput struct{ *pulumi.OutputState }

func (NetworkArrayOutput) ElementType

func (NetworkArrayOutput) ElementType() reflect.Type

func (NetworkArrayOutput) Index

func (NetworkArrayOutput) ToNetworkArrayOutput

func (o NetworkArrayOutput) ToNetworkArrayOutput() NetworkArrayOutput

func (NetworkArrayOutput) ToNetworkArrayOutputWithContext

func (o NetworkArrayOutput) ToNetworkArrayOutputWithContext(ctx context.Context) NetworkArrayOutput

func (NetworkArrayOutput) ToOutput

type NetworkInput

type NetworkInput interface {
	pulumi.Input

	ToNetworkOutput() NetworkOutput
	ToNetworkOutputWithContext(ctx context.Context) NetworkOutput
}

type NetworkMap

type NetworkMap map[string]NetworkInput

func (NetworkMap) ElementType

func (NetworkMap) ElementType() reflect.Type

func (NetworkMap) ToNetworkMapOutput

func (i NetworkMap) ToNetworkMapOutput() NetworkMapOutput

func (NetworkMap) ToNetworkMapOutputWithContext

func (i NetworkMap) ToNetworkMapOutputWithContext(ctx context.Context) NetworkMapOutput

func (NetworkMap) ToOutput

func (i NetworkMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Network]

type NetworkMapInput

type NetworkMapInput interface {
	pulumi.Input

	ToNetworkMapOutput() NetworkMapOutput
	ToNetworkMapOutputWithContext(context.Context) NetworkMapOutput
}

NetworkMapInput is an input type that accepts NetworkMap and NetworkMapOutput values. You can construct a concrete instance of `NetworkMapInput` via:

NetworkMap{ "key": NetworkArgs{...} }

type NetworkMapOutput

type NetworkMapOutput struct{ *pulumi.OutputState }

func (NetworkMapOutput) ElementType

func (NetworkMapOutput) ElementType() reflect.Type

func (NetworkMapOutput) MapIndex

func (NetworkMapOutput) ToNetworkMapOutput

func (o NetworkMapOutput) ToNetworkMapOutput() NetworkMapOutput

func (NetworkMapOutput) ToNetworkMapOutputWithContext

func (o NetworkMapOutput) ToNetworkMapOutputWithContext(ctx context.Context) NetworkMapOutput

func (NetworkMapOutput) ToOutput

type NetworkOutput

type NetworkOutput struct{ *pulumi.OutputState }

func (NetworkOutput) DhcpDns

Specifies the IPv4 addresses for the DNS server to be returned from the DHCP server. Leave blank to disable this feature.

func (NetworkOutput) DhcpEnabled

func (o NetworkOutput) DhcpEnabled() pulumi.BoolPtrOutput

Specifies whether DHCP is enabled or not on this network.

func (NetworkOutput) DhcpLease

func (o NetworkOutput) DhcpLease() pulumi.IntPtrOutput

Specifies the lease time for DHCP addresses in seconds. Defaults to `86400`.

func (NetworkOutput) DhcpRelayEnabled

func (o NetworkOutput) DhcpRelayEnabled() pulumi.BoolPtrOutput

Specifies whether DHCP relay is enabled or not on this network.

func (NetworkOutput) DhcpStart

func (o NetworkOutput) DhcpStart() pulumi.StringPtrOutput

The IPv4 address where the DHCP range of addresses starts.

func (NetworkOutput) DhcpStop

func (o NetworkOutput) DhcpStop() pulumi.StringPtrOutput

The IPv4 address where the DHCP range of addresses stops.

func (NetworkOutput) DhcpV6Dns

func (o NetworkOutput) DhcpV6Dns() pulumi.StringArrayOutput

Specifies the IPv6 addresses for the DNS server to be returned from the DHCP server. Used if `dhcpV6DnsAuto` is set to `false`.

func (NetworkOutput) DhcpV6DnsAuto

func (o NetworkOutput) DhcpV6DnsAuto() pulumi.BoolPtrOutput

Specifies DNS source to propagate. If set `false` the entries in `dhcpV6Dns` are used, the upstream entries otherwise Defaults to `true`.

func (NetworkOutput) DhcpV6Enabled

func (o NetworkOutput) DhcpV6Enabled() pulumi.BoolPtrOutput

Enable stateful DHCPv6 for static configuration.

func (NetworkOutput) DhcpV6Lease

func (o NetworkOutput) DhcpV6Lease() pulumi.IntPtrOutput

Specifies the lease time for DHCPv6 addresses in seconds. Defaults to `86400`.

func (NetworkOutput) DhcpV6Start

func (o NetworkOutput) DhcpV6Start() pulumi.StringPtrOutput

Start address of the DHCPv6 range. Used in static DHCPv6 configuration.

func (NetworkOutput) DhcpV6Stop

func (o NetworkOutput) DhcpV6Stop() pulumi.StringPtrOutput

End address of the DHCPv6 range. Used in static DHCPv6 configuration.

func (NetworkOutput) DhcpdBootEnabled

func (o NetworkOutput) DhcpdBootEnabled() pulumi.BoolPtrOutput

Toggles on the DHCP boot options. Should be set to true when you want to have dhcpd*boot*filename, and dhcpd*boot*server to take effect.

func (NetworkOutput) DhcpdBootFilename

func (o NetworkOutput) DhcpdBootFilename() pulumi.StringPtrOutput

Specifies the file to PXE boot from on the dhcpd*boot*server.

func (NetworkOutput) DhcpdBootServer

func (o NetworkOutput) DhcpdBootServer() pulumi.StringPtrOutput

Specifies the IPv4 address of a TFTP server to network boot from.

func (NetworkOutput) DomainName

func (o NetworkOutput) DomainName() pulumi.StringPtrOutput

The domain name of this network.

func (NetworkOutput) ElementType

func (NetworkOutput) ElementType() reflect.Type

func (NetworkOutput) IgmpSnooping

func (o NetworkOutput) IgmpSnooping() pulumi.BoolPtrOutput

Specifies whether IGMP snooping is enabled or not.

func (NetworkOutput) InternetAccessEnabled

func (o NetworkOutput) InternetAccessEnabled() pulumi.BoolPtrOutput

Specifies whether this network should be allowed to access the internet or not. Defaults to `true`.

func (NetworkOutput) IntraNetworkAccessEnabled

func (o NetworkOutput) IntraNetworkAccessEnabled() pulumi.BoolPtrOutput

Specifies whether this network should be allowed to access other local networks or not. Defaults to `true`.

func (NetworkOutput) Ipv6InterfaceType

func (o NetworkOutput) Ipv6InterfaceType() pulumi.StringPtrOutput

Specifies which type of IPv6 connection to use. Must be one of either `static`, `pd`, or `none`. Defaults to `none`.

func (NetworkOutput) Ipv6PdInterface

func (o NetworkOutput) Ipv6PdInterface() pulumi.StringPtrOutput

Specifies which WAN interface to use for IPv6 PD. Must be one of either `wan` or `wan2`.

func (NetworkOutput) Ipv6PdPrefixid

func (o NetworkOutput) Ipv6PdPrefixid() pulumi.StringPtrOutput

Specifies the IPv6 Prefix ID.

func (NetworkOutput) Ipv6PdStart

func (o NetworkOutput) Ipv6PdStart() pulumi.StringPtrOutput

Start address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.

func (NetworkOutput) Ipv6PdStop

func (o NetworkOutput) Ipv6PdStop() pulumi.StringPtrOutput

End address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.

func (NetworkOutput) Ipv6RaEnable

func (o NetworkOutput) Ipv6RaEnable() pulumi.BoolPtrOutput

Specifies whether to enable router advertisements or not.

func (NetworkOutput) Ipv6RaPreferredLifetime

func (o NetworkOutput) Ipv6RaPreferredLifetime() pulumi.IntPtrOutput

Lifetime in which the address can be used. Address becomes deprecated afterwards. Must be lower than or equal to `ipv6RaValidLifetime` Defaults to `14400`.

func (NetworkOutput) Ipv6RaPriority

func (o NetworkOutput) Ipv6RaPriority() pulumi.StringPtrOutput

IPv6 router advertisement priority. Must be one of either `high`, `medium`, or `low`

func (NetworkOutput) Ipv6RaValidLifetime

func (o NetworkOutput) Ipv6RaValidLifetime() pulumi.IntPtrOutput

Total lifetime in which the address can be used. Must be equal to or greater than `ipv6RaPreferredLifetime`. Defaults to `86400`.

func (NetworkOutput) Ipv6StaticSubnet

func (o NetworkOutput) Ipv6StaticSubnet() pulumi.StringPtrOutput

Specifies the static IPv6 subnet when `ipv6InterfaceType` is 'static'.

func (NetworkOutput) MulticastDns

func (o NetworkOutput) MulticastDns() pulumi.BoolPtrOutput

Specifies whether Multicast DNS (mDNS) is enabled or not on the network (Controller >=v7).

func (NetworkOutput) Name

The name of the network.

func (NetworkOutput) NetworkGroup

func (o NetworkOutput) NetworkGroup() pulumi.StringPtrOutput

The group of the network. Defaults to `LAN`.

func (NetworkOutput) Purpose

func (o NetworkOutput) Purpose() pulumi.StringOutput

The purpose of the network. Must be one of `corporate`, `guest`, `wan`, or `vlan-only`.

func (NetworkOutput) Site

The name of the site to associate the network with.

func (NetworkOutput) Subnet

The subnet of the network. Must be a valid CIDR address.

func (NetworkOutput) ToNetworkOutput

func (o NetworkOutput) ToNetworkOutput() NetworkOutput

func (NetworkOutput) ToNetworkOutputWithContext

func (o NetworkOutput) ToNetworkOutputWithContext(ctx context.Context) NetworkOutput

func (NetworkOutput) ToOutput

func (o NetworkOutput) ToOutput(ctx context.Context) pulumix.Output[*Network]

func (NetworkOutput) VlanId

func (o NetworkOutput) VlanId() pulumi.IntPtrOutput

The VLAN ID of the network.

func (NetworkOutput) WanDhcpV6PdSize

func (o NetworkOutput) WanDhcpV6PdSize() pulumi.IntPtrOutput

Specifies the IPv6 prefix size to request from ISP. Must be between 48 and 64.

func (NetworkOutput) WanDns

DNS servers IPs of the WAN.

func (NetworkOutput) WanEgressQos

func (o NetworkOutput) WanEgressQos() pulumi.IntPtrOutput

Specifies the WAN egress quality of service. Defaults to `0`.

func (NetworkOutput) WanGateway

func (o NetworkOutput) WanGateway() pulumi.StringPtrOutput

The IPv4 gateway of the WAN.

func (NetworkOutput) WanGatewayV6

func (o NetworkOutput) WanGatewayV6() pulumi.StringPtrOutput

The IPv6 gateway of the WAN.

func (NetworkOutput) WanIp

The IPv4 address of the WAN.

func (NetworkOutput) WanIpv6

func (o NetworkOutput) WanIpv6() pulumi.StringPtrOutput

The IPv6 address of the WAN.

func (NetworkOutput) WanNetmask

func (o NetworkOutput) WanNetmask() pulumi.StringPtrOutput

The IPv4 netmask of the WAN.

func (NetworkOutput) WanNetworkgroup

func (o NetworkOutput) WanNetworkgroup() pulumi.StringPtrOutput

Specifies the WAN network group. Must be one of either `WAN`, `WAN2` or `WAN_LTE_FAILOVER`.

func (NetworkOutput) WanPrefixlen

func (o NetworkOutput) WanPrefixlen() pulumi.IntPtrOutput

The IPv6 prefix length of the WAN. Must be between 1 and 128.

func (NetworkOutput) WanType

func (o NetworkOutput) WanType() pulumi.StringPtrOutput

Specifies the IPV4 WAN connection type. Must be one of either `disabled`, `static`, `dhcp`, or `pppoe`.

func (NetworkOutput) WanTypeV6

func (o NetworkOutput) WanTypeV6() pulumi.StringPtrOutput

Specifies the IPV6 WAN connection type. Must be one of either `disabled`, `static`, or `dhcpv6`.

func (NetworkOutput) WanUsername

func (o NetworkOutput) WanUsername() pulumi.StringPtrOutput

Specifies the IPV4 WAN username.

func (NetworkOutput) XWanPassword

func (o NetworkOutput) XWanPassword() pulumi.StringPtrOutput

Specifies the IPV4 WAN password.

type NetworkState

type NetworkState struct {
	// Specifies the IPv4 addresses for the DNS server to be returned from the DHCP server. Leave blank to disable this feature.
	DhcpDns pulumi.StringArrayInput
	// Specifies whether DHCP is enabled or not on this network.
	DhcpEnabled pulumi.BoolPtrInput
	// Specifies the lease time for DHCP addresses in seconds. Defaults to `86400`.
	DhcpLease pulumi.IntPtrInput
	// Specifies whether DHCP relay is enabled or not on this network.
	DhcpRelayEnabled pulumi.BoolPtrInput
	// The IPv4 address where the DHCP range of addresses starts.
	DhcpStart pulumi.StringPtrInput
	// The IPv4 address where the DHCP range of addresses stops.
	DhcpStop pulumi.StringPtrInput
	// Specifies the IPv6 addresses for the DNS server to be returned from the DHCP server. Used if `dhcpV6DnsAuto` is set to `false`.
	DhcpV6Dns pulumi.StringArrayInput
	// Specifies DNS source to propagate. If set `false` the entries in `dhcpV6Dns` are used, the upstream entries otherwise Defaults to `true`.
	DhcpV6DnsAuto pulumi.BoolPtrInput
	// Enable stateful DHCPv6 for static configuration.
	DhcpV6Enabled pulumi.BoolPtrInput
	// Specifies the lease time for DHCPv6 addresses in seconds. Defaults to `86400`.
	DhcpV6Lease pulumi.IntPtrInput
	// Start address of the DHCPv6 range. Used in static DHCPv6 configuration.
	DhcpV6Start pulumi.StringPtrInput
	// End address of the DHCPv6 range. Used in static DHCPv6 configuration.
	DhcpV6Stop pulumi.StringPtrInput
	// Toggles on the DHCP boot options. Should be set to true when you want to have dhcpd*boot*filename, and dhcpd*boot*server to take effect.
	DhcpdBootEnabled pulumi.BoolPtrInput
	// Specifies the file to PXE boot from on the dhcpd*boot*server.
	DhcpdBootFilename pulumi.StringPtrInput
	// Specifies the IPv4 address of a TFTP server to network boot from.
	DhcpdBootServer pulumi.StringPtrInput
	// The domain name of this network.
	DomainName pulumi.StringPtrInput
	// Specifies whether IGMP snooping is enabled or not.
	IgmpSnooping pulumi.BoolPtrInput
	// Specifies whether this network should be allowed to access the internet or not. Defaults to `true`.
	InternetAccessEnabled pulumi.BoolPtrInput
	// Specifies whether this network should be allowed to access other local networks or not. Defaults to `true`.
	IntraNetworkAccessEnabled pulumi.BoolPtrInput
	// Specifies which type of IPv6 connection to use. Must be one of either `static`, `pd`, or `none`. Defaults to `none`.
	Ipv6InterfaceType pulumi.StringPtrInput
	// Specifies which WAN interface to use for IPv6 PD. Must be one of either `wan` or `wan2`.
	Ipv6PdInterface pulumi.StringPtrInput
	// Specifies the IPv6 Prefix ID.
	Ipv6PdPrefixid pulumi.StringPtrInput
	// Start address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.
	Ipv6PdStart pulumi.StringPtrInput
	// End address of the DHCPv6 range. Used if `ipv6InterfaceType` is set to `pd`.
	Ipv6PdStop pulumi.StringPtrInput
	// Specifies whether to enable router advertisements or not.
	Ipv6RaEnable pulumi.BoolPtrInput
	// Lifetime in which the address can be used. Address becomes deprecated afterwards. Must be lower than or equal to `ipv6RaValidLifetime` Defaults to `14400`.
	Ipv6RaPreferredLifetime pulumi.IntPtrInput
	// IPv6 router advertisement priority. Must be one of either `high`, `medium`, or `low`
	Ipv6RaPriority pulumi.StringPtrInput
	// Total lifetime in which the address can be used. Must be equal to or greater than `ipv6RaPreferredLifetime`. Defaults to `86400`.
	Ipv6RaValidLifetime pulumi.IntPtrInput
	// Specifies the static IPv6 subnet when `ipv6InterfaceType` is 'static'.
	Ipv6StaticSubnet pulumi.StringPtrInput
	// Specifies whether Multicast DNS (mDNS) is enabled or not on the network (Controller >=v7).
	MulticastDns pulumi.BoolPtrInput
	// The name of the network.
	Name pulumi.StringPtrInput
	// The group of the network. Defaults to `LAN`.
	NetworkGroup pulumi.StringPtrInput
	// The purpose of the network. Must be one of `corporate`, `guest`, `wan`, or `vlan-only`.
	Purpose pulumi.StringPtrInput
	// The name of the site to associate the network with.
	Site pulumi.StringPtrInput
	// The subnet of the network. Must be a valid CIDR address.
	Subnet pulumi.StringPtrInput
	// The VLAN ID of the network.
	VlanId pulumi.IntPtrInput
	// Specifies the IPv6 prefix size to request from ISP. Must be between 48 and 64.
	WanDhcpV6PdSize pulumi.IntPtrInput
	// DNS servers IPs of the WAN.
	WanDns pulumi.StringArrayInput
	// Specifies the WAN egress quality of service. Defaults to `0`.
	WanEgressQos pulumi.IntPtrInput
	// The IPv4 gateway of the WAN.
	WanGateway pulumi.StringPtrInput
	// The IPv6 gateway of the WAN.
	WanGatewayV6 pulumi.StringPtrInput
	// The IPv4 address of the WAN.
	WanIp pulumi.StringPtrInput
	// The IPv6 address of the WAN.
	WanIpv6 pulumi.StringPtrInput
	// The IPv4 netmask of the WAN.
	WanNetmask pulumi.StringPtrInput
	// Specifies the WAN network group. Must be one of either `WAN`, `WAN2` or `WAN_LTE_FAILOVER`.
	WanNetworkgroup pulumi.StringPtrInput
	// The IPv6 prefix length of the WAN. Must be between 1 and 128.
	WanPrefixlen pulumi.IntPtrInput
	// Specifies the IPV4 WAN connection type. Must be one of either `disabled`, `static`, `dhcp`, or `pppoe`.
	WanType pulumi.StringPtrInput
	// Specifies the IPV6 WAN connection type. Must be one of either `disabled`, `static`, or `dhcpv6`.
	WanTypeV6 pulumi.StringPtrInput
	// Specifies the IPV4 WAN username.
	WanUsername pulumi.StringPtrInput
	// Specifies the IPV4 WAN password.
	XWanPassword pulumi.StringPtrInput
}

func (NetworkState) ElementType

func (NetworkState) ElementType() reflect.Type

type Provider

type Provider struct {
	pulumi.ProviderResourceState

	// URL of the controller API. Can be specified with the `UNIFI_API` environment variable. You should **NOT** supply the
	// path (`/api`), the SDK will discover the appropriate paths. This is to support UDM Pro style API paths as well as more
	// standard controller paths.
	ApiUrl pulumi.StringPtrOutput `pulumi:"apiUrl"`
	// Password for the user accessing the API. Can be specified with the `UNIFI_PASSWORD` environment variable.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// The site in the Unifi controller this provider will manage. Can be specified with the `UNIFI_SITE` environment variable.
	// Default: `default`
	Site pulumi.StringPtrOutput `pulumi:"site"`
	// Local user name for the Unifi controller API. Can be specified with the `UNIFI_USERNAME` environment variable.
	Username pulumi.StringPtrOutput `pulumi:"username"`
}

The provider type for the unifi package. By default, resources use package-wide configuration settings, however an explicit `Provider` instance may be created and passed during resource construction to achieve fine-grained programmatic control over provider settings. See the [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.

func NewProvider

func NewProvider(ctx *pulumi.Context,
	name string, args *ProviderArgs, opts ...pulumi.ResourceOption) (*Provider, error)

NewProvider registers a new resource with the given unique name, arguments, and options.

func (*Provider) ElementType

func (*Provider) ElementType() reflect.Type

func (*Provider) ToOutput

func (i *Provider) ToOutput(ctx context.Context) pulumix.Output[*Provider]

func (*Provider) ToProviderOutput

func (i *Provider) ToProviderOutput() ProviderOutput

func (*Provider) ToProviderOutputWithContext

func (i *Provider) ToProviderOutputWithContext(ctx context.Context) ProviderOutput

type ProviderArgs

type ProviderArgs struct {
	// Skip verification of TLS certificates of API requests. You may need to set this to `true` if you are using your local
	// API without setting up a signed certificate. Can be specified with the `UNIFI_INSECURE` environment variable.
	AllowInsecure pulumi.BoolPtrInput
	// URL of the controller API. Can be specified with the `UNIFI_API` environment variable. You should **NOT** supply the
	// path (`/api`), the SDK will discover the appropriate paths. This is to support UDM Pro style API paths as well as more
	// standard controller paths.
	ApiUrl pulumi.StringPtrInput
	// Password for the user accessing the API. Can be specified with the `UNIFI_PASSWORD` environment variable.
	Password pulumi.StringPtrInput
	// The site in the Unifi controller this provider will manage. Can be specified with the `UNIFI_SITE` environment variable.
	// Default: `default`
	Site pulumi.StringPtrInput
	// Local user name for the Unifi controller API. Can be specified with the `UNIFI_USERNAME` environment variable.
	Username pulumi.StringPtrInput
}

The set of arguments for constructing a Provider resource.

func (ProviderArgs) ElementType

func (ProviderArgs) ElementType() reflect.Type

type ProviderInput

type ProviderInput interface {
	pulumi.Input

	ToProviderOutput() ProviderOutput
	ToProviderOutputWithContext(ctx context.Context) ProviderOutput
}

type ProviderOutput

type ProviderOutput struct{ *pulumi.OutputState }

func (ProviderOutput) ApiUrl

URL of the controller API. Can be specified with the `UNIFI_API` environment variable. You should **NOT** supply the path (`/api`), the SDK will discover the appropriate paths. This is to support UDM Pro style API paths as well as more standard controller paths.

func (ProviderOutput) ElementType

func (ProviderOutput) ElementType() reflect.Type

func (ProviderOutput) Password

func (o ProviderOutput) Password() pulumi.StringPtrOutput

Password for the user accessing the API. Can be specified with the `UNIFI_PASSWORD` environment variable.

func (ProviderOutput) Site

The site in the Unifi controller this provider will manage. Can be specified with the `UNIFI_SITE` environment variable. Default: `default`

func (ProviderOutput) ToOutput

func (ProviderOutput) ToProviderOutput

func (o ProviderOutput) ToProviderOutput() ProviderOutput

func (ProviderOutput) ToProviderOutputWithContext

func (o ProviderOutput) ToProviderOutputWithContext(ctx context.Context) ProviderOutput

func (ProviderOutput) Username

func (o ProviderOutput) Username() pulumi.StringPtrOutput

Local user name for the Unifi controller API. Can be specified with the `UNIFI_USERNAME` environment variable.

type RadiusProfile

type RadiusProfile struct {
	pulumi.CustomResourceState

	// Specifies whether to use RADIUS accounting. Defaults to `false`.
	AccountingEnabled pulumi.BoolPtrOutput `pulumi:"accountingEnabled"`
	// RADIUS accounting servers.
	AcctServers RadiusProfileAcctServerArrayOutput `pulumi:"acctServers"`
	// RADIUS authentication servers.
	AuthServers RadiusProfileAuthServerArrayOutput `pulumi:"authServers"`
	// Specifies whether to use interim_update. Defaults to `false`.
	InterimUpdateEnabled pulumi.BoolPtrOutput `pulumi:"interimUpdateEnabled"`
	// Specifies interimUpdate interval. Defaults to `3600`.
	InterimUpdateInterval pulumi.IntPtrOutput `pulumi:"interimUpdateInterval"`
	// The name of the profile.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the site to associate the settings with.
	Site pulumi.StringOutput `pulumi:"site"`
	// Specifies whether to use usg as a RADIUS accounting server. Defaults to `false`.
	UseUsgAcctServer pulumi.BoolPtrOutput `pulumi:"useUsgAcctServer"`
	// Specifies whether to use usg as a RADIUS authentication server. Defaults to `false`.
	UseUsgAuthServer pulumi.BoolPtrOutput `pulumi:"useUsgAuthServer"`
	// Specifies whether to use vlan on wired connections. Defaults to `false`.
	VlanEnabled pulumi.BoolPtrOutput `pulumi:"vlanEnabled"`
	// Specifies whether to use vlan on wireless connections. Must be one of `disabled`, `optional`, or `required`. Defaults to “.
	VlanWlanMode pulumi.StringPtrOutput `pulumi:"vlanWlanMode"`
}

`RadiusProfile` manages RADIUS profiles.

func GetRadiusProfile

func GetRadiusProfile(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RadiusProfileState, opts ...pulumi.ResourceOption) (*RadiusProfile, error)

GetRadiusProfile gets an existing RadiusProfile resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRadiusProfile

func NewRadiusProfile(ctx *pulumi.Context,
	name string, args *RadiusProfileArgs, opts ...pulumi.ResourceOption) (*RadiusProfile, error)

NewRadiusProfile registers a new resource with the given unique name, arguments, and options.

func (*RadiusProfile) ElementType

func (*RadiusProfile) ElementType() reflect.Type

func (*RadiusProfile) ToOutput

func (*RadiusProfile) ToRadiusProfileOutput

func (i *RadiusProfile) ToRadiusProfileOutput() RadiusProfileOutput

func (*RadiusProfile) ToRadiusProfileOutputWithContext

func (i *RadiusProfile) ToRadiusProfileOutputWithContext(ctx context.Context) RadiusProfileOutput

type RadiusProfileAcctServer

type RadiusProfileAcctServer struct {
	// IP address of accounting service server.
	Ip string `pulumi:"ip"`
	// Port of accounting service. Defaults to `1813`.
	Port *int `pulumi:"port"`
	// RADIUS secret.
	Xsecret string `pulumi:"xsecret"`
}

type RadiusProfileAcctServerArgs

type RadiusProfileAcctServerArgs struct {
	// IP address of accounting service server.
	Ip pulumi.StringInput `pulumi:"ip"`
	// Port of accounting service. Defaults to `1813`.
	Port pulumi.IntPtrInput `pulumi:"port"`
	// RADIUS secret.
	Xsecret pulumi.StringInput `pulumi:"xsecret"`
}

func (RadiusProfileAcctServerArgs) ElementType

func (RadiusProfileAcctServerArgs) ToOutput

func (RadiusProfileAcctServerArgs) ToRadiusProfileAcctServerOutput

func (i RadiusProfileAcctServerArgs) ToRadiusProfileAcctServerOutput() RadiusProfileAcctServerOutput

func (RadiusProfileAcctServerArgs) ToRadiusProfileAcctServerOutputWithContext

func (i RadiusProfileAcctServerArgs) ToRadiusProfileAcctServerOutputWithContext(ctx context.Context) RadiusProfileAcctServerOutput

type RadiusProfileAcctServerArray

type RadiusProfileAcctServerArray []RadiusProfileAcctServerInput

func (RadiusProfileAcctServerArray) ElementType

func (RadiusProfileAcctServerArray) ToOutput

func (RadiusProfileAcctServerArray) ToRadiusProfileAcctServerArrayOutput

func (i RadiusProfileAcctServerArray) ToRadiusProfileAcctServerArrayOutput() RadiusProfileAcctServerArrayOutput

func (RadiusProfileAcctServerArray) ToRadiusProfileAcctServerArrayOutputWithContext

func (i RadiusProfileAcctServerArray) ToRadiusProfileAcctServerArrayOutputWithContext(ctx context.Context) RadiusProfileAcctServerArrayOutput

type RadiusProfileAcctServerArrayInput

type RadiusProfileAcctServerArrayInput interface {
	pulumi.Input

	ToRadiusProfileAcctServerArrayOutput() RadiusProfileAcctServerArrayOutput
	ToRadiusProfileAcctServerArrayOutputWithContext(context.Context) RadiusProfileAcctServerArrayOutput
}

RadiusProfileAcctServerArrayInput is an input type that accepts RadiusProfileAcctServerArray and RadiusProfileAcctServerArrayOutput values. You can construct a concrete instance of `RadiusProfileAcctServerArrayInput` via:

RadiusProfileAcctServerArray{ RadiusProfileAcctServerArgs{...} }

type RadiusProfileAcctServerArrayOutput

type RadiusProfileAcctServerArrayOutput struct{ *pulumi.OutputState }

func (RadiusProfileAcctServerArrayOutput) ElementType

func (RadiusProfileAcctServerArrayOutput) Index

func (RadiusProfileAcctServerArrayOutput) ToOutput

func (RadiusProfileAcctServerArrayOutput) ToRadiusProfileAcctServerArrayOutput

func (o RadiusProfileAcctServerArrayOutput) ToRadiusProfileAcctServerArrayOutput() RadiusProfileAcctServerArrayOutput

func (RadiusProfileAcctServerArrayOutput) ToRadiusProfileAcctServerArrayOutputWithContext

func (o RadiusProfileAcctServerArrayOutput) ToRadiusProfileAcctServerArrayOutputWithContext(ctx context.Context) RadiusProfileAcctServerArrayOutput

type RadiusProfileAcctServerInput

type RadiusProfileAcctServerInput interface {
	pulumi.Input

	ToRadiusProfileAcctServerOutput() RadiusProfileAcctServerOutput
	ToRadiusProfileAcctServerOutputWithContext(context.Context) RadiusProfileAcctServerOutput
}

RadiusProfileAcctServerInput is an input type that accepts RadiusProfileAcctServerArgs and RadiusProfileAcctServerOutput values. You can construct a concrete instance of `RadiusProfileAcctServerInput` via:

RadiusProfileAcctServerArgs{...}

type RadiusProfileAcctServerOutput

type RadiusProfileAcctServerOutput struct{ *pulumi.OutputState }

func (RadiusProfileAcctServerOutput) ElementType

func (RadiusProfileAcctServerOutput) Ip

IP address of accounting service server.

func (RadiusProfileAcctServerOutput) Port

Port of accounting service. Defaults to `1813`.

func (RadiusProfileAcctServerOutput) ToOutput

func (RadiusProfileAcctServerOutput) ToRadiusProfileAcctServerOutput

func (o RadiusProfileAcctServerOutput) ToRadiusProfileAcctServerOutput() RadiusProfileAcctServerOutput

func (RadiusProfileAcctServerOutput) ToRadiusProfileAcctServerOutputWithContext

func (o RadiusProfileAcctServerOutput) ToRadiusProfileAcctServerOutputWithContext(ctx context.Context) RadiusProfileAcctServerOutput

func (RadiusProfileAcctServerOutput) Xsecret

RADIUS secret.

type RadiusProfileArgs

type RadiusProfileArgs struct {
	// Specifies whether to use RADIUS accounting. Defaults to `false`.
	AccountingEnabled pulumi.BoolPtrInput
	// RADIUS accounting servers.
	AcctServers RadiusProfileAcctServerArrayInput
	// RADIUS authentication servers.
	AuthServers RadiusProfileAuthServerArrayInput
	// Specifies whether to use interim_update. Defaults to `false`.
	InterimUpdateEnabled pulumi.BoolPtrInput
	// Specifies interimUpdate interval. Defaults to `3600`.
	InterimUpdateInterval pulumi.IntPtrInput
	// The name of the profile.
	Name pulumi.StringPtrInput
	// The name of the site to associate the settings with.
	Site pulumi.StringPtrInput
	// Specifies whether to use usg as a RADIUS accounting server. Defaults to `false`.
	UseUsgAcctServer pulumi.BoolPtrInput
	// Specifies whether to use usg as a RADIUS authentication server. Defaults to `false`.
	UseUsgAuthServer pulumi.BoolPtrInput
	// Specifies whether to use vlan on wired connections. Defaults to `false`.
	VlanEnabled pulumi.BoolPtrInput
	// Specifies whether to use vlan on wireless connections. Must be one of `disabled`, `optional`, or `required`. Defaults to “.
	VlanWlanMode pulumi.StringPtrInput
}

The set of arguments for constructing a RadiusProfile resource.

func (RadiusProfileArgs) ElementType

func (RadiusProfileArgs) ElementType() reflect.Type

type RadiusProfileArray

type RadiusProfileArray []RadiusProfileInput

func (RadiusProfileArray) ElementType

func (RadiusProfileArray) ElementType() reflect.Type

func (RadiusProfileArray) ToOutput

func (RadiusProfileArray) ToRadiusProfileArrayOutput

func (i RadiusProfileArray) ToRadiusProfileArrayOutput() RadiusProfileArrayOutput

func (RadiusProfileArray) ToRadiusProfileArrayOutputWithContext

func (i RadiusProfileArray) ToRadiusProfileArrayOutputWithContext(ctx context.Context) RadiusProfileArrayOutput

type RadiusProfileArrayInput

type RadiusProfileArrayInput interface {
	pulumi.Input

	ToRadiusProfileArrayOutput() RadiusProfileArrayOutput
	ToRadiusProfileArrayOutputWithContext(context.Context) RadiusProfileArrayOutput
}

RadiusProfileArrayInput is an input type that accepts RadiusProfileArray and RadiusProfileArrayOutput values. You can construct a concrete instance of `RadiusProfileArrayInput` via:

RadiusProfileArray{ RadiusProfileArgs{...} }

type RadiusProfileArrayOutput

type RadiusProfileArrayOutput struct{ *pulumi.OutputState }

func (RadiusProfileArrayOutput) ElementType

func (RadiusProfileArrayOutput) ElementType() reflect.Type

func (RadiusProfileArrayOutput) Index

func (RadiusProfileArrayOutput) ToOutput

func (RadiusProfileArrayOutput) ToRadiusProfileArrayOutput

func (o RadiusProfileArrayOutput) ToRadiusProfileArrayOutput() RadiusProfileArrayOutput

func (RadiusProfileArrayOutput) ToRadiusProfileArrayOutputWithContext

func (o RadiusProfileArrayOutput) ToRadiusProfileArrayOutputWithContext(ctx context.Context) RadiusProfileArrayOutput

type RadiusProfileAuthServer

type RadiusProfileAuthServer struct {
	// IP address of authentication service server.
	Ip string `pulumi:"ip"`
	// Port of authentication service. Defaults to `1812`.
	Port *int `pulumi:"port"`
	// RADIUS secret.
	Xsecret string `pulumi:"xsecret"`
}

type RadiusProfileAuthServerArgs

type RadiusProfileAuthServerArgs struct {
	// IP address of authentication service server.
	Ip pulumi.StringInput `pulumi:"ip"`
	// Port of authentication service. Defaults to `1812`.
	Port pulumi.IntPtrInput `pulumi:"port"`
	// RADIUS secret.
	Xsecret pulumi.StringInput `pulumi:"xsecret"`
}

func (RadiusProfileAuthServerArgs) ElementType

func (RadiusProfileAuthServerArgs) ToOutput

func (RadiusProfileAuthServerArgs) ToRadiusProfileAuthServerOutput

func (i RadiusProfileAuthServerArgs) ToRadiusProfileAuthServerOutput() RadiusProfileAuthServerOutput

func (RadiusProfileAuthServerArgs) ToRadiusProfileAuthServerOutputWithContext

func (i RadiusProfileAuthServerArgs) ToRadiusProfileAuthServerOutputWithContext(ctx context.Context) RadiusProfileAuthServerOutput

type RadiusProfileAuthServerArray

type RadiusProfileAuthServerArray []RadiusProfileAuthServerInput

func (RadiusProfileAuthServerArray) ElementType

func (RadiusProfileAuthServerArray) ToOutput

func (RadiusProfileAuthServerArray) ToRadiusProfileAuthServerArrayOutput

func (i RadiusProfileAuthServerArray) ToRadiusProfileAuthServerArrayOutput() RadiusProfileAuthServerArrayOutput

func (RadiusProfileAuthServerArray) ToRadiusProfileAuthServerArrayOutputWithContext

func (i RadiusProfileAuthServerArray) ToRadiusProfileAuthServerArrayOutputWithContext(ctx context.Context) RadiusProfileAuthServerArrayOutput

type RadiusProfileAuthServerArrayInput

type RadiusProfileAuthServerArrayInput interface {
	pulumi.Input

	ToRadiusProfileAuthServerArrayOutput() RadiusProfileAuthServerArrayOutput
	ToRadiusProfileAuthServerArrayOutputWithContext(context.Context) RadiusProfileAuthServerArrayOutput
}

RadiusProfileAuthServerArrayInput is an input type that accepts RadiusProfileAuthServerArray and RadiusProfileAuthServerArrayOutput values. You can construct a concrete instance of `RadiusProfileAuthServerArrayInput` via:

RadiusProfileAuthServerArray{ RadiusProfileAuthServerArgs{...} }

type RadiusProfileAuthServerArrayOutput

type RadiusProfileAuthServerArrayOutput struct{ *pulumi.OutputState }

func (RadiusProfileAuthServerArrayOutput) ElementType

func (RadiusProfileAuthServerArrayOutput) Index

func (RadiusProfileAuthServerArrayOutput) ToOutput

func (RadiusProfileAuthServerArrayOutput) ToRadiusProfileAuthServerArrayOutput

func (o RadiusProfileAuthServerArrayOutput) ToRadiusProfileAuthServerArrayOutput() RadiusProfileAuthServerArrayOutput

func (RadiusProfileAuthServerArrayOutput) ToRadiusProfileAuthServerArrayOutputWithContext

func (o RadiusProfileAuthServerArrayOutput) ToRadiusProfileAuthServerArrayOutputWithContext(ctx context.Context) RadiusProfileAuthServerArrayOutput

type RadiusProfileAuthServerInput

type RadiusProfileAuthServerInput interface {
	pulumi.Input

	ToRadiusProfileAuthServerOutput() RadiusProfileAuthServerOutput
	ToRadiusProfileAuthServerOutputWithContext(context.Context) RadiusProfileAuthServerOutput
}

RadiusProfileAuthServerInput is an input type that accepts RadiusProfileAuthServerArgs and RadiusProfileAuthServerOutput values. You can construct a concrete instance of `RadiusProfileAuthServerInput` via:

RadiusProfileAuthServerArgs{...}

type RadiusProfileAuthServerOutput

type RadiusProfileAuthServerOutput struct{ *pulumi.OutputState }

func (RadiusProfileAuthServerOutput) ElementType

func (RadiusProfileAuthServerOutput) Ip

IP address of authentication service server.

func (RadiusProfileAuthServerOutput) Port

Port of authentication service. Defaults to `1812`.

func (RadiusProfileAuthServerOutput) ToOutput

func (RadiusProfileAuthServerOutput) ToRadiusProfileAuthServerOutput

func (o RadiusProfileAuthServerOutput) ToRadiusProfileAuthServerOutput() RadiusProfileAuthServerOutput

func (RadiusProfileAuthServerOutput) ToRadiusProfileAuthServerOutputWithContext

func (o RadiusProfileAuthServerOutput) ToRadiusProfileAuthServerOutputWithContext(ctx context.Context) RadiusProfileAuthServerOutput

func (RadiusProfileAuthServerOutput) Xsecret

RADIUS secret.

type RadiusProfileInput

type RadiusProfileInput interface {
	pulumi.Input

	ToRadiusProfileOutput() RadiusProfileOutput
	ToRadiusProfileOutputWithContext(ctx context.Context) RadiusProfileOutput
}

type RadiusProfileMap

type RadiusProfileMap map[string]RadiusProfileInput

func (RadiusProfileMap) ElementType

func (RadiusProfileMap) ElementType() reflect.Type

func (RadiusProfileMap) ToOutput

func (RadiusProfileMap) ToRadiusProfileMapOutput

func (i RadiusProfileMap) ToRadiusProfileMapOutput() RadiusProfileMapOutput

func (RadiusProfileMap) ToRadiusProfileMapOutputWithContext

func (i RadiusProfileMap) ToRadiusProfileMapOutputWithContext(ctx context.Context) RadiusProfileMapOutput

type RadiusProfileMapInput

type RadiusProfileMapInput interface {
	pulumi.Input

	ToRadiusProfileMapOutput() RadiusProfileMapOutput
	ToRadiusProfileMapOutputWithContext(context.Context) RadiusProfileMapOutput
}

RadiusProfileMapInput is an input type that accepts RadiusProfileMap and RadiusProfileMapOutput values. You can construct a concrete instance of `RadiusProfileMapInput` via:

RadiusProfileMap{ "key": RadiusProfileArgs{...} }

type RadiusProfileMapOutput

type RadiusProfileMapOutput struct{ *pulumi.OutputState }

func (RadiusProfileMapOutput) ElementType

func (RadiusProfileMapOutput) ElementType() reflect.Type

func (RadiusProfileMapOutput) MapIndex

func (RadiusProfileMapOutput) ToOutput

func (RadiusProfileMapOutput) ToRadiusProfileMapOutput

func (o RadiusProfileMapOutput) ToRadiusProfileMapOutput() RadiusProfileMapOutput

func (RadiusProfileMapOutput) ToRadiusProfileMapOutputWithContext

func (o RadiusProfileMapOutput) ToRadiusProfileMapOutputWithContext(ctx context.Context) RadiusProfileMapOutput

type RadiusProfileOutput

type RadiusProfileOutput struct{ *pulumi.OutputState }

func (RadiusProfileOutput) AccountingEnabled

func (o RadiusProfileOutput) AccountingEnabled() pulumi.BoolPtrOutput

Specifies whether to use RADIUS accounting. Defaults to `false`.

func (RadiusProfileOutput) AcctServers

RADIUS accounting servers.

func (RadiusProfileOutput) AuthServers

RADIUS authentication servers.

func (RadiusProfileOutput) ElementType

func (RadiusProfileOutput) ElementType() reflect.Type

func (RadiusProfileOutput) InterimUpdateEnabled

func (o RadiusProfileOutput) InterimUpdateEnabled() pulumi.BoolPtrOutput

Specifies whether to use interim_update. Defaults to `false`.

func (RadiusProfileOutput) InterimUpdateInterval

func (o RadiusProfileOutput) InterimUpdateInterval() pulumi.IntPtrOutput

Specifies interimUpdate interval. Defaults to `3600`.

func (RadiusProfileOutput) Name

The name of the profile.

func (RadiusProfileOutput) Site

The name of the site to associate the settings with.

func (RadiusProfileOutput) ToOutput

func (RadiusProfileOutput) ToRadiusProfileOutput

func (o RadiusProfileOutput) ToRadiusProfileOutput() RadiusProfileOutput

func (RadiusProfileOutput) ToRadiusProfileOutputWithContext

func (o RadiusProfileOutput) ToRadiusProfileOutputWithContext(ctx context.Context) RadiusProfileOutput

func (RadiusProfileOutput) UseUsgAcctServer

func (o RadiusProfileOutput) UseUsgAcctServer() pulumi.BoolPtrOutput

Specifies whether to use usg as a RADIUS accounting server. Defaults to `false`.

func (RadiusProfileOutput) UseUsgAuthServer

func (o RadiusProfileOutput) UseUsgAuthServer() pulumi.BoolPtrOutput

Specifies whether to use usg as a RADIUS authentication server. Defaults to `false`.

func (RadiusProfileOutput) VlanEnabled

func (o RadiusProfileOutput) VlanEnabled() pulumi.BoolPtrOutput

Specifies whether to use vlan on wired connections. Defaults to `false`.

func (RadiusProfileOutput) VlanWlanMode

func (o RadiusProfileOutput) VlanWlanMode() pulumi.StringPtrOutput

Specifies whether to use vlan on wireless connections. Must be one of `disabled`, `optional`, or `required`. Defaults to “.

type RadiusProfileState

type RadiusProfileState struct {
	// Specifies whether to use RADIUS accounting. Defaults to `false`.
	AccountingEnabled pulumi.BoolPtrInput
	// RADIUS accounting servers.
	AcctServers RadiusProfileAcctServerArrayInput
	// RADIUS authentication servers.
	AuthServers RadiusProfileAuthServerArrayInput
	// Specifies whether to use interim_update. Defaults to `false`.
	InterimUpdateEnabled pulumi.BoolPtrInput
	// Specifies interimUpdate interval. Defaults to `3600`.
	InterimUpdateInterval pulumi.IntPtrInput
	// The name of the profile.
	Name pulumi.StringPtrInput
	// The name of the site to associate the settings with.
	Site pulumi.StringPtrInput
	// Specifies whether to use usg as a RADIUS accounting server. Defaults to `false`.
	UseUsgAcctServer pulumi.BoolPtrInput
	// Specifies whether to use usg as a RADIUS authentication server. Defaults to `false`.
	UseUsgAuthServer pulumi.BoolPtrInput
	// Specifies whether to use vlan on wired connections. Defaults to `false`.
	VlanEnabled pulumi.BoolPtrInput
	// Specifies whether to use vlan on wireless connections. Must be one of `disabled`, `optional`, or `required`. Defaults to “.
	VlanWlanMode pulumi.StringPtrInput
}

func (RadiusProfileState) ElementType

func (RadiusProfileState) ElementType() reflect.Type

type Site

type Site struct {
	pulumi.CustomResourceState

	// The description of the site.
	Description pulumi.StringOutput `pulumi:"description"`
	// The name of the site.
	Name pulumi.StringOutput `pulumi:"name"`
}

`Site` manages Unifi sites

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := unifi.NewSite(ctx, "mysite", &unifi.SiteArgs{
			Description: pulumi.String("mysite"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

import using the API/UI ID

```sh

$ pulumi import unifi:index/site:Site mysite 5fe6261995fe130013456a36

```

import using the name (short ID)

```sh

$ pulumi import unifi:index/site:Site mysite vq98kwez

```

func GetSite

func GetSite(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SiteState, opts ...pulumi.ResourceOption) (*Site, error)

GetSite gets an existing Site resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSite

func NewSite(ctx *pulumi.Context,
	name string, args *SiteArgs, opts ...pulumi.ResourceOption) (*Site, error)

NewSite registers a new resource with the given unique name, arguments, and options.

func (*Site) ElementType

func (*Site) ElementType() reflect.Type

func (*Site) ToOutput

func (i *Site) ToOutput(ctx context.Context) pulumix.Output[*Site]

func (*Site) ToSiteOutput

func (i *Site) ToSiteOutput() SiteOutput

func (*Site) ToSiteOutputWithContext

func (i *Site) ToSiteOutputWithContext(ctx context.Context) SiteOutput

type SiteArgs

type SiteArgs struct {
	// The description of the site.
	Description pulumi.StringInput
}

The set of arguments for constructing a Site resource.

func (SiteArgs) ElementType

func (SiteArgs) ElementType() reflect.Type

type SiteArray

type SiteArray []SiteInput

func (SiteArray) ElementType

func (SiteArray) ElementType() reflect.Type

func (SiteArray) ToOutput

func (i SiteArray) ToOutput(ctx context.Context) pulumix.Output[[]*Site]

func (SiteArray) ToSiteArrayOutput

func (i SiteArray) ToSiteArrayOutput() SiteArrayOutput

func (SiteArray) ToSiteArrayOutputWithContext

func (i SiteArray) ToSiteArrayOutputWithContext(ctx context.Context) SiteArrayOutput

type SiteArrayInput

type SiteArrayInput interface {
	pulumi.Input

	ToSiteArrayOutput() SiteArrayOutput
	ToSiteArrayOutputWithContext(context.Context) SiteArrayOutput
}

SiteArrayInput is an input type that accepts SiteArray and SiteArrayOutput values. You can construct a concrete instance of `SiteArrayInput` via:

SiteArray{ SiteArgs{...} }

type SiteArrayOutput

type SiteArrayOutput struct{ *pulumi.OutputState }

func (SiteArrayOutput) ElementType

func (SiteArrayOutput) ElementType() reflect.Type

func (SiteArrayOutput) Index

func (SiteArrayOutput) ToOutput

func (o SiteArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]*Site]

func (SiteArrayOutput) ToSiteArrayOutput

func (o SiteArrayOutput) ToSiteArrayOutput() SiteArrayOutput

func (SiteArrayOutput) ToSiteArrayOutputWithContext

func (o SiteArrayOutput) ToSiteArrayOutputWithContext(ctx context.Context) SiteArrayOutput

type SiteInput

type SiteInput interface {
	pulumi.Input

	ToSiteOutput() SiteOutput
	ToSiteOutputWithContext(ctx context.Context) SiteOutput
}

type SiteMap

type SiteMap map[string]SiteInput

func (SiteMap) ElementType

func (SiteMap) ElementType() reflect.Type

func (SiteMap) ToOutput

func (i SiteMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Site]

func (SiteMap) ToSiteMapOutput

func (i SiteMap) ToSiteMapOutput() SiteMapOutput

func (SiteMap) ToSiteMapOutputWithContext

func (i SiteMap) ToSiteMapOutputWithContext(ctx context.Context) SiteMapOutput

type SiteMapInput

type SiteMapInput interface {
	pulumi.Input

	ToSiteMapOutput() SiteMapOutput
	ToSiteMapOutputWithContext(context.Context) SiteMapOutput
}

SiteMapInput is an input type that accepts SiteMap and SiteMapOutput values. You can construct a concrete instance of `SiteMapInput` via:

SiteMap{ "key": SiteArgs{...} }

type SiteMapOutput

type SiteMapOutput struct{ *pulumi.OutputState }

func (SiteMapOutput) ElementType

func (SiteMapOutput) ElementType() reflect.Type

func (SiteMapOutput) MapIndex

func (SiteMapOutput) ToOutput

func (o SiteMapOutput) ToOutput(ctx context.Context) pulumix.Output[map[string]*Site]

func (SiteMapOutput) ToSiteMapOutput

func (o SiteMapOutput) ToSiteMapOutput() SiteMapOutput

func (SiteMapOutput) ToSiteMapOutputWithContext

func (o SiteMapOutput) ToSiteMapOutputWithContext(ctx context.Context) SiteMapOutput

type SiteOutput

type SiteOutput struct{ *pulumi.OutputState }

func (SiteOutput) Description

func (o SiteOutput) Description() pulumi.StringOutput

The description of the site.

func (SiteOutput) ElementType

func (SiteOutput) ElementType() reflect.Type

func (SiteOutput) Name

func (o SiteOutput) Name() pulumi.StringOutput

The name of the site.

func (SiteOutput) ToOutput

func (o SiteOutput) ToOutput(ctx context.Context) pulumix.Output[*Site]

func (SiteOutput) ToSiteOutput

func (o SiteOutput) ToSiteOutput() SiteOutput

func (SiteOutput) ToSiteOutputWithContext

func (o SiteOutput) ToSiteOutputWithContext(ctx context.Context) SiteOutput

type SiteState

type SiteState struct {
	// The description of the site.
	Description pulumi.StringPtrInput
	// The name of the site.
	Name pulumi.StringPtrInput
}

func (SiteState) ElementType

func (SiteState) ElementType() reflect.Type

type StaticRoute

type StaticRoute struct {
	pulumi.CustomResourceState

	// The distance of the static route.
	Distance pulumi.IntOutput `pulumi:"distance"`
	// The interface of the static route (only valid for `interface-route` type). This can be `WAN1`, `WAN2`, or a network ID.
	Interface pulumi.StringPtrOutput `pulumi:"interface"`
	// The name of the static route.
	Name pulumi.StringOutput `pulumi:"name"`
	// The network subnet address.
	Network pulumi.StringOutput `pulumi:"network"`
	// The next hop of the static route (only valid for `nexthop-route` type).
	NextHop pulumi.StringPtrOutput `pulumi:"nextHop"`
	// The name of the site to associate the static route with.
	Site pulumi.StringOutput `pulumi:"site"`
	// The type of static route. Can be `interface-route`, `nexthop-route`, or `blackhole`.
	Type pulumi.StringOutput `pulumi:"type"`
}

`StaticRoute` manages a static route.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := unifi.NewStaticRoute(ctx, "nexthop", &unifi.StaticRouteArgs{
			Type:     pulumi.String("nexthop-route"),
			Network:  pulumi.String("172.17.0.0/16"),
			Distance: pulumi.Int(1),
			NextHop:  pulumi.String("172.16.0.1"),
		})
		if err != nil {
			return err
		}
		_, err = unifi.NewStaticRoute(ctx, "blackhole", &unifi.StaticRouteArgs{
			Type:     pulumi.String("blackhole"),
			Network:  pulumi.Any(_var.Blackhole_cidr),
			Distance: pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		_, err = unifi.NewStaticRoute(ctx, "interface", &unifi.StaticRouteArgs{
			Type:      pulumi.String("interface-route"),
			Network:   pulumi.Any(_var.Wan2_cidr),
			Distance:  pulumi.Int(1),
			Interface: pulumi.String("WAN2"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetStaticRoute

func GetStaticRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *StaticRouteState, opts ...pulumi.ResourceOption) (*StaticRoute, error)

GetStaticRoute gets an existing StaticRoute resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewStaticRoute

func NewStaticRoute(ctx *pulumi.Context,
	name string, args *StaticRouteArgs, opts ...pulumi.ResourceOption) (*StaticRoute, error)

NewStaticRoute registers a new resource with the given unique name, arguments, and options.

func (*StaticRoute) ElementType

func (*StaticRoute) ElementType() reflect.Type

func (*StaticRoute) ToOutput

func (i *StaticRoute) ToOutput(ctx context.Context) pulumix.Output[*StaticRoute]

func (*StaticRoute) ToStaticRouteOutput

func (i *StaticRoute) ToStaticRouteOutput() StaticRouteOutput

func (*StaticRoute) ToStaticRouteOutputWithContext

func (i *StaticRoute) ToStaticRouteOutputWithContext(ctx context.Context) StaticRouteOutput

type StaticRouteArgs

type StaticRouteArgs struct {
	// The distance of the static route.
	Distance pulumi.IntInput
	// The interface of the static route (only valid for `interface-route` type). This can be `WAN1`, `WAN2`, or a network ID.
	Interface pulumi.StringPtrInput
	// The name of the static route.
	Name pulumi.StringPtrInput
	// The network subnet address.
	Network pulumi.StringInput
	// The next hop of the static route (only valid for `nexthop-route` type).
	NextHop pulumi.StringPtrInput
	// The name of the site to associate the static route with.
	Site pulumi.StringPtrInput
	// The type of static route. Can be `interface-route`, `nexthop-route`, or `blackhole`.
	Type pulumi.StringInput
}

The set of arguments for constructing a StaticRoute resource.

func (StaticRouteArgs) ElementType

func (StaticRouteArgs) ElementType() reflect.Type

type StaticRouteArray

type StaticRouteArray []StaticRouteInput

func (StaticRouteArray) ElementType

func (StaticRouteArray) ElementType() reflect.Type

func (StaticRouteArray) ToOutput

func (StaticRouteArray) ToStaticRouteArrayOutput

func (i StaticRouteArray) ToStaticRouteArrayOutput() StaticRouteArrayOutput

func (StaticRouteArray) ToStaticRouteArrayOutputWithContext

func (i StaticRouteArray) ToStaticRouteArrayOutputWithContext(ctx context.Context) StaticRouteArrayOutput

type StaticRouteArrayInput

type StaticRouteArrayInput interface {
	pulumi.Input

	ToStaticRouteArrayOutput() StaticRouteArrayOutput
	ToStaticRouteArrayOutputWithContext(context.Context) StaticRouteArrayOutput
}

StaticRouteArrayInput is an input type that accepts StaticRouteArray and StaticRouteArrayOutput values. You can construct a concrete instance of `StaticRouteArrayInput` via:

StaticRouteArray{ StaticRouteArgs{...} }

type StaticRouteArrayOutput

type StaticRouteArrayOutput struct{ *pulumi.OutputState }

func (StaticRouteArrayOutput) ElementType

func (StaticRouteArrayOutput) ElementType() reflect.Type

func (StaticRouteArrayOutput) Index

func (StaticRouteArrayOutput) ToOutput

func (StaticRouteArrayOutput) ToStaticRouteArrayOutput

func (o StaticRouteArrayOutput) ToStaticRouteArrayOutput() StaticRouteArrayOutput

func (StaticRouteArrayOutput) ToStaticRouteArrayOutputWithContext

func (o StaticRouteArrayOutput) ToStaticRouteArrayOutputWithContext(ctx context.Context) StaticRouteArrayOutput

type StaticRouteInput

type StaticRouteInput interface {
	pulumi.Input

	ToStaticRouteOutput() StaticRouteOutput
	ToStaticRouteOutputWithContext(ctx context.Context) StaticRouteOutput
}

type StaticRouteMap

type StaticRouteMap map[string]StaticRouteInput

func (StaticRouteMap) ElementType

func (StaticRouteMap) ElementType() reflect.Type

func (StaticRouteMap) ToOutput

func (StaticRouteMap) ToStaticRouteMapOutput

func (i StaticRouteMap) ToStaticRouteMapOutput() StaticRouteMapOutput

func (StaticRouteMap) ToStaticRouteMapOutputWithContext

func (i StaticRouteMap) ToStaticRouteMapOutputWithContext(ctx context.Context) StaticRouteMapOutput

type StaticRouteMapInput

type StaticRouteMapInput interface {
	pulumi.Input

	ToStaticRouteMapOutput() StaticRouteMapOutput
	ToStaticRouteMapOutputWithContext(context.Context) StaticRouteMapOutput
}

StaticRouteMapInput is an input type that accepts StaticRouteMap and StaticRouteMapOutput values. You can construct a concrete instance of `StaticRouteMapInput` via:

StaticRouteMap{ "key": StaticRouteArgs{...} }

type StaticRouteMapOutput

type StaticRouteMapOutput struct{ *pulumi.OutputState }

func (StaticRouteMapOutput) ElementType

func (StaticRouteMapOutput) ElementType() reflect.Type

func (StaticRouteMapOutput) MapIndex

func (StaticRouteMapOutput) ToOutput

func (StaticRouteMapOutput) ToStaticRouteMapOutput

func (o StaticRouteMapOutput) ToStaticRouteMapOutput() StaticRouteMapOutput

func (StaticRouteMapOutput) ToStaticRouteMapOutputWithContext

func (o StaticRouteMapOutput) ToStaticRouteMapOutputWithContext(ctx context.Context) StaticRouteMapOutput

type StaticRouteOutput

type StaticRouteOutput struct{ *pulumi.OutputState }

func (StaticRouteOutput) Distance

func (o StaticRouteOutput) Distance() pulumi.IntOutput

The distance of the static route.

func (StaticRouteOutput) ElementType

func (StaticRouteOutput) ElementType() reflect.Type

func (StaticRouteOutput) Interface

The interface of the static route (only valid for `interface-route` type). This can be `WAN1`, `WAN2`, or a network ID.

func (StaticRouteOutput) Name

The name of the static route.

func (StaticRouteOutput) Network

The network subnet address.

func (StaticRouteOutput) NextHop

The next hop of the static route (only valid for `nexthop-route` type).

func (StaticRouteOutput) Site

The name of the site to associate the static route with.

func (StaticRouteOutput) ToOutput

func (StaticRouteOutput) ToStaticRouteOutput

func (o StaticRouteOutput) ToStaticRouteOutput() StaticRouteOutput

func (StaticRouteOutput) ToStaticRouteOutputWithContext

func (o StaticRouteOutput) ToStaticRouteOutputWithContext(ctx context.Context) StaticRouteOutput

func (StaticRouteOutput) Type

The type of static route. Can be `interface-route`, `nexthop-route`, or `blackhole`.

type StaticRouteState

type StaticRouteState struct {
	// The distance of the static route.
	Distance pulumi.IntPtrInput
	// The interface of the static route (only valid for `interface-route` type). This can be `WAN1`, `WAN2`, or a network ID.
	Interface pulumi.StringPtrInput
	// The name of the static route.
	Name pulumi.StringPtrInput
	// The network subnet address.
	Network pulumi.StringPtrInput
	// The next hop of the static route (only valid for `nexthop-route` type).
	NextHop pulumi.StringPtrInput
	// The name of the site to associate the static route with.
	Site pulumi.StringPtrInput
	// The type of static route. Can be `interface-route`, `nexthop-route`, or `blackhole`.
	Type pulumi.StringPtrInput
}

func (StaticRouteState) ElementType

func (StaticRouteState) ElementType() reflect.Type

type Wlan

type Wlan struct {
	pulumi.CustomResourceState

	// IDs of the AP groups to use for this network.
	ApGroupIds pulumi.StringArrayOutput `pulumi:"apGroupIds"`
	// Improves client transitions between APs when they have a weak signal. Defaults to `true`.
	BssTransition pulumi.BoolPtrOutput `pulumi:"bssTransition"`
	// Enables 802.11r fast roaming. Defaults to `false`.
	FastRoamingEnabled pulumi.BoolPtrOutput `pulumi:"fastRoamingEnabled"`
	// Indicates whether or not to hide the SSID from broadcast.
	HideSsid pulumi.BoolPtrOutput `pulumi:"hideSsid"`
	// Indicates that this is a guest WLAN and should use guest behaviors.
	IsGuest pulumi.BoolPtrOutput `pulumi:"isGuest"`
	// Isolates stations on layer 2 (ethernet) level. Defaults to `false`.
	L2Isolation pulumi.BoolPtrOutput `pulumi:"l2Isolation"`
	// Indicates whether or not the MAC filter is turned of for the network.
	MacFilterEnabled pulumi.BoolPtrOutput `pulumi:"macFilterEnabled"`
	// List of MAC addresses to filter (only valid if `macFilterEnabled` is `true`).
	MacFilterLists pulumi.StringArrayOutput `pulumi:"macFilterLists"`
	// MAC address filter policy (only valid if `macFilterEnabled` is `true`). Defaults to `deny`.
	MacFilterPolicy pulumi.StringPtrOutput `pulumi:"macFilterPolicy"`
	// Set minimum data rate control for 2G devices, in Kbps. Use `0` to disable minimum data rates. Valid values are: `1000`, `2000`, `5500`, `6000`, `9000`, `11000`, `12000`, `18000`, `24000`, `36000`, `48000`,  and `54000`.
	MinimumDataRate2gKbps pulumi.IntPtrOutput `pulumi:"minimumDataRate2gKbps"`
	// Set minimum data rate control for 5G devices, in Kbps. Use `0` to disable minimum data rates. Valid values are: `6000`, `9000`, `12000`, `18000`, `24000`, `36000`, `48000`,  and `54000`.
	MinimumDataRate5gKbps pulumi.IntPtrOutput `pulumi:"minimumDataRate5gKbps"`
	// Indicates whether or not Multicast Enhance is turned of for the network.
	MulticastEnhance pulumi.BoolPtrOutput `pulumi:"multicastEnhance"`
	// The SSID of the network.
	Name pulumi.StringOutput `pulumi:"name"`
	// ID of the network for this SSID
	NetworkId pulumi.StringPtrOutput `pulumi:"networkId"`
	// Connect high performance clients to 5 GHz only. Defaults to `true`.
	No2ghzOui pulumi.BoolPtrOutput `pulumi:"no2ghzOui"`
	// The passphrase for the network, this is only required if `security` is not set to `open`.
	Passphrase pulumi.StringPtrOutput `pulumi:"passphrase"`
	// Enable Protected Management Frames. This cannot be disabled if using WPA 3. Valid values are `required`, `optional` and `disabled`. Defaults to `disabled`.
	PmfMode pulumi.StringPtrOutput `pulumi:"pmfMode"`
	// Reduces airtime usage by allowing APs to "proxy" common broadcast frames as unicast. Defaults to `false`.
	ProxyArp pulumi.BoolPtrOutput `pulumi:"proxyArp"`
	// ID of the RADIUS profile to use when security `wpaeap`. You can query this via the `RadiusProfile` data source.
	RadiusProfileId pulumi.StringPtrOutput `pulumi:"radiusProfileId"`
	// Start and stop schedules for the WLAN
	Schedules WlanScheduleArrayOutput `pulumi:"schedules"`
	// The type of WiFi security for this network. Valid values are: `wpapsk`, `wpaeap`, and `open`.
	Security pulumi.StringOutput `pulumi:"security"`
	// The name of the site to associate the wlan with.
	Site pulumi.StringOutput `pulumi:"site"`
	// Enable Unscheduled Automatic Power Save Delivery. Defaults to `false`.
	Uapsd pulumi.BoolPtrOutput `pulumi:"uapsd"`
	// ID of the user group to use for this network.
	UserGroupId pulumi.StringOutput `pulumi:"userGroupId"`
	// Radio band your WiFi network will use. Defaults to `both`.
	WlanBand pulumi.StringPtrOutput `pulumi:"wlanBand"`
	// Enable WPA 3 support (security must be `wpapsk` and PMF must be turned on).
	Wpa3Support pulumi.BoolPtrOutput `pulumi:"wpa3Support"`
	// Enable WPA 3 and WPA 2 support (security must be `wpapsk` and `wpa3Support` must be true).
	Wpa3Transition pulumi.BoolPtrOutput `pulumi:"wpa3Transition"`
}

`Wlan` manages a WiFi network / SSID.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi"
"github.com/pulumiverse/pulumi-unifi/sdk/go/unifi/iam"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		vlanId := float64(10)
		if param := cfg.GetFloat64("vlanId"); param != 0 {
			vlanId = param
		}
		defaultApGroup, err := unifi.GetApGroup(ctx, nil, nil)
		if err != nil {
			return err
		}
		defaultGroup, err := iam.LookupGroup(ctx, nil, nil)
		if err != nil {
			return err
		}
		vlan, err := unifi.NewNetwork(ctx, "vlan", &unifi.NetworkArgs{
			Purpose:     pulumi.String("corporate"),
			Subnet:      pulumi.String("10.0.0.1/24"),
			VlanId:      pulumi.Float64(vlanId),
			DhcpStart:   pulumi.String("10.0.0.6"),
			DhcpStop:    pulumi.String("10.0.0.254"),
			DhcpEnabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = unifi.NewWlan(ctx, "wifi", &unifi.WlanArgs{
			Passphrase:     pulumi.String("12345678"),
			Security:       pulumi.String("wpapsk"),
			Wpa3Support:    pulumi.Bool(true),
			Wpa3Transition: pulumi.Bool(true),
			PmfMode:        pulumi.String("optional"),
			NetworkId:      vlan.ID(),
			ApGroupIds: pulumi.StringArray{
				*pulumi.String(defaultApGroup.Id),
			},
			UserGroupId: *pulumi.String(defaultGroup.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

import from provider configured site

```sh

$ pulumi import unifi:index/wlan:Wlan mywlan 5dc28e5e9106d105bdc87217

```

import from another site

```sh

$ pulumi import unifi:index/wlan:Wlan mywlan bfa2l6i7:5dc28e5e9106d105bdc87217

```

func GetWlan

func GetWlan(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *WlanState, opts ...pulumi.ResourceOption) (*Wlan, error)

GetWlan gets an existing Wlan resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewWlan

func NewWlan(ctx *pulumi.Context,
	name string, args *WlanArgs, opts ...pulumi.ResourceOption) (*Wlan, error)

NewWlan registers a new resource with the given unique name, arguments, and options.

func (*Wlan) ElementType

func (*Wlan) ElementType() reflect.Type

func (*Wlan) ToOutput

func (i *Wlan) ToOutput(ctx context.Context) pulumix.Output[*Wlan]

func (*Wlan) ToWlanOutput

func (i *Wlan) ToWlanOutput() WlanOutput

func (*Wlan) ToWlanOutputWithContext

func (i *Wlan) ToWlanOutputWithContext(ctx context.Context) WlanOutput

type WlanArgs

type WlanArgs struct {
	// IDs of the AP groups to use for this network.
	ApGroupIds pulumi.StringArrayInput
	// Improves client transitions between APs when they have a weak signal. Defaults to `true`.
	BssTransition pulumi.BoolPtrInput
	// Enables 802.11r fast roaming. Defaults to `false`.
	FastRoamingEnabled pulumi.BoolPtrInput
	// Indicates whether or not to hide the SSID from broadcast.
	HideSsid pulumi.BoolPtrInput
	// Indicates that this is a guest WLAN and should use guest behaviors.
	IsGuest pulumi.BoolPtrInput
	// Isolates stations on layer 2 (ethernet) level. Defaults to `false`.
	L2Isolation pulumi.BoolPtrInput
	// Indicates whether or not the MAC filter is turned of for the network.
	MacFilterEnabled pulumi.BoolPtrInput
	// List of MAC addresses to filter (only valid if `macFilterEnabled` is `true`).
	MacFilterLists pulumi.StringArrayInput
	// MAC address filter policy (only valid if `macFilterEnabled` is `true`). Defaults to `deny`.
	MacFilterPolicy pulumi.StringPtrInput
	// Set minimum data rate control for 2G devices, in Kbps. Use `0` to disable minimum data rates. Valid values are: `1000`, `2000`, `5500`, `6000`, `9000`, `11000`, `12000`, `18000`, `24000`, `36000`, `48000`,  and `54000`.
	MinimumDataRate2gKbps pulumi.IntPtrInput
	// Set minimum data rate control for 5G devices, in Kbps. Use `0` to disable minimum data rates. Valid values are: `6000`, `9000`, `12000`, `18000`, `24000`, `36000`, `48000`,  and `54000`.
	MinimumDataRate5gKbps pulumi.IntPtrInput
	// Indicates whether or not Multicast Enhance is turned of for the network.
	MulticastEnhance pulumi.BoolPtrInput
	// The SSID of the network.
	Name pulumi.StringPtrInput
	// ID of the network for this SSID
	NetworkId pulumi.StringPtrInput
	// Connect high performance clients to 5 GHz only. Defaults to `true`.
	No2ghzOui pulumi.BoolPtrInput
	// The passphrase for the network, this is only required if `security` is not set to `open`.
	Passphrase pulumi.StringPtrInput
	// Enable Protected Management Frames. This cannot be disabled if using WPA 3. Valid values are `required`, `optional` and `disabled`. Defaults to `disabled`.
	PmfMode pulumi.StringPtrInput
	// Reduces airtime usage by allowing APs to "proxy" common broadcast frames as unicast. Defaults to `false`.
	ProxyArp pulumi.BoolPtrInput
	// ID of the RADIUS profile to use when security `wpaeap`. You can query this via the `RadiusProfile` data source.
	RadiusProfileId pulumi.StringPtrInput
	// Start and stop schedules for the WLAN
	Schedules WlanScheduleArrayInput
	// The type of WiFi security for this network. Valid values are: `wpapsk`, `wpaeap`, and `open`.
	Security pulumi.StringInput
	// The name of the site to associate the wlan with.
	Site pulumi.StringPtrInput
	// Enable Unscheduled Automatic Power Save Delivery. Defaults to `false`.
	Uapsd pulumi.BoolPtrInput
	// ID of the user group to use for this network.
	UserGroupId pulumi.StringInput
	// Radio band your WiFi network will use. Defaults to `both`.
	WlanBand pulumi.StringPtrInput
	// Enable WPA 3 support (security must be `wpapsk` and PMF must be turned on).
	Wpa3Support pulumi.BoolPtrInput
	// Enable WPA 3 and WPA 2 support (security must be `wpapsk` and `wpa3Support` must be true).
	Wpa3Transition pulumi.BoolPtrInput
}

The set of arguments for constructing a Wlan resource.

func (WlanArgs) ElementType

func (WlanArgs) ElementType() reflect.Type

type WlanArray

type WlanArray []WlanInput

func (WlanArray) ElementType

func (WlanArray) ElementType() reflect.Type

func (WlanArray) ToOutput

func (i WlanArray) ToOutput(ctx context.Context) pulumix.Output[[]*Wlan]

func (WlanArray) ToWlanArrayOutput

func (i WlanArray) ToWlanArrayOutput() WlanArrayOutput

func (WlanArray) ToWlanArrayOutputWithContext

func (i WlanArray) ToWlanArrayOutputWithContext(ctx context.Context) WlanArrayOutput

type WlanArrayInput

type WlanArrayInput interface {
	pulumi.Input

	ToWlanArrayOutput() WlanArrayOutput
	ToWlanArrayOutputWithContext(context.Context) WlanArrayOutput
}

WlanArrayInput is an input type that accepts WlanArray and WlanArrayOutput values. You can construct a concrete instance of `WlanArrayInput` via:

WlanArray{ WlanArgs{...} }

type WlanArrayOutput

type WlanArrayOutput struct{ *pulumi.OutputState }

func (WlanArrayOutput) ElementType

func (WlanArrayOutput) ElementType() reflect.Type

func (WlanArrayOutput) Index

func (WlanArrayOutput) ToOutput

func (o WlanArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]*Wlan]

func (WlanArrayOutput) ToWlanArrayOutput

func (o WlanArrayOutput) ToWlanArrayOutput() WlanArrayOutput

func (WlanArrayOutput) ToWlanArrayOutputWithContext

func (o WlanArrayOutput) ToWlanArrayOutputWithContext(ctx context.Context) WlanArrayOutput

type WlanInput

type WlanInput interface {
	pulumi.Input

	ToWlanOutput() WlanOutput
	ToWlanOutputWithContext(ctx context.Context) WlanOutput
}

type WlanMap

type WlanMap map[string]WlanInput

func (WlanMap) ElementType

func (WlanMap) ElementType() reflect.Type

func (WlanMap) ToOutput

func (i WlanMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Wlan]

func (WlanMap) ToWlanMapOutput

func (i WlanMap) ToWlanMapOutput() WlanMapOutput

func (WlanMap) ToWlanMapOutputWithContext

func (i WlanMap) ToWlanMapOutputWithContext(ctx context.Context) WlanMapOutput

type WlanMapInput

type WlanMapInput interface {
	pulumi.Input

	ToWlanMapOutput() WlanMapOutput
	ToWlanMapOutputWithContext(context.Context) WlanMapOutput
}

WlanMapInput is an input type that accepts WlanMap and WlanMapOutput values. You can construct a concrete instance of `WlanMapInput` via:

WlanMap{ "key": WlanArgs{...} }

type WlanMapOutput

type WlanMapOutput struct{ *pulumi.OutputState }

func (WlanMapOutput) ElementType

func (WlanMapOutput) ElementType() reflect.Type

func (WlanMapOutput) MapIndex

func (WlanMapOutput) ToOutput

func (o WlanMapOutput) ToOutput(ctx context.Context) pulumix.Output[map[string]*Wlan]

func (WlanMapOutput) ToWlanMapOutput

func (o WlanMapOutput) ToWlanMapOutput() WlanMapOutput

func (WlanMapOutput) ToWlanMapOutputWithContext

func (o WlanMapOutput) ToWlanMapOutputWithContext(ctx context.Context) WlanMapOutput

type WlanOutput

type WlanOutput struct{ *pulumi.OutputState }

func (WlanOutput) ApGroupIds

func (o WlanOutput) ApGroupIds() pulumi.StringArrayOutput

IDs of the AP groups to use for this network.

func (WlanOutput) BssTransition

func (o WlanOutput) BssTransition() pulumi.BoolPtrOutput

Improves client transitions between APs when they have a weak signal. Defaults to `true`.

func (WlanOutput) ElementType

func (WlanOutput) ElementType() reflect.Type

func (WlanOutput) FastRoamingEnabled

func (o WlanOutput) FastRoamingEnabled() pulumi.BoolPtrOutput

Enables 802.11r fast roaming. Defaults to `false`.

func (WlanOutput) HideSsid

func (o WlanOutput) HideSsid() pulumi.BoolPtrOutput

Indicates whether or not to hide the SSID from broadcast.

func (WlanOutput) IsGuest

func (o WlanOutput) IsGuest() pulumi.BoolPtrOutput

Indicates that this is a guest WLAN and should use guest behaviors.

func (WlanOutput) L2Isolation

func (o WlanOutput) L2Isolation() pulumi.BoolPtrOutput

Isolates stations on layer 2 (ethernet) level. Defaults to `false`.

func (WlanOutput) MacFilterEnabled

func (o WlanOutput) MacFilterEnabled() pulumi.BoolPtrOutput

Indicates whether or not the MAC filter is turned of for the network.

func (WlanOutput) MacFilterLists

func (o WlanOutput) MacFilterLists() pulumi.StringArrayOutput

List of MAC addresses to filter (only valid if `macFilterEnabled` is `true`).

func (WlanOutput) MacFilterPolicy

func (o WlanOutput) MacFilterPolicy() pulumi.StringPtrOutput

MAC address filter policy (only valid if `macFilterEnabled` is `true`). Defaults to `deny`.

func (WlanOutput) MinimumDataRate2gKbps

func (o WlanOutput) MinimumDataRate2gKbps() pulumi.IntPtrOutput

Set minimum data rate control for 2G devices, in Kbps. Use `0` to disable minimum data rates. Valid values are: `1000`, `2000`, `5500`, `6000`, `9000`, `11000`, `12000`, `18000`, `24000`, `36000`, `48000`, and `54000`.

func (WlanOutput) MinimumDataRate5gKbps

func (o WlanOutput) MinimumDataRate5gKbps() pulumi.IntPtrOutput

Set minimum data rate control for 5G devices, in Kbps. Use `0` to disable minimum data rates. Valid values are: `6000`, `9000`, `12000`, `18000`, `24000`, `36000`, `48000`, and `54000`.

func (WlanOutput) MulticastEnhance

func (o WlanOutput) MulticastEnhance() pulumi.BoolPtrOutput

Indicates whether or not Multicast Enhance is turned of for the network.

func (WlanOutput) Name

func (o WlanOutput) Name() pulumi.StringOutput

The SSID of the network.

func (WlanOutput) NetworkId

func (o WlanOutput) NetworkId() pulumi.StringPtrOutput

ID of the network for this SSID

func (WlanOutput) No2ghzOui

func (o WlanOutput) No2ghzOui() pulumi.BoolPtrOutput

Connect high performance clients to 5 GHz only. Defaults to `true`.

func (WlanOutput) Passphrase

func (o WlanOutput) Passphrase() pulumi.StringPtrOutput

The passphrase for the network, this is only required if `security` is not set to `open`.

func (WlanOutput) PmfMode

func (o WlanOutput) PmfMode() pulumi.StringPtrOutput

Enable Protected Management Frames. This cannot be disabled if using WPA 3. Valid values are `required`, `optional` and `disabled`. Defaults to `disabled`.

func (WlanOutput) ProxyArp

func (o WlanOutput) ProxyArp() pulumi.BoolPtrOutput

Reduces airtime usage by allowing APs to "proxy" common broadcast frames as unicast. Defaults to `false`.

func (WlanOutput) RadiusProfileId

func (o WlanOutput) RadiusProfileId() pulumi.StringPtrOutput

ID of the RADIUS profile to use when security `wpaeap`. You can query this via the `RadiusProfile` data source.

func (WlanOutput) Schedules

func (o WlanOutput) Schedules() WlanScheduleArrayOutput

Start and stop schedules for the WLAN

func (WlanOutput) Security

func (o WlanOutput) Security() pulumi.StringOutput

The type of WiFi security for this network. Valid values are: `wpapsk`, `wpaeap`, and `open`.

func (WlanOutput) Site

func (o WlanOutput) Site() pulumi.StringOutput

The name of the site to associate the wlan with.

func (WlanOutput) ToOutput

func (o WlanOutput) ToOutput(ctx context.Context) pulumix.Output[*Wlan]

func (WlanOutput) ToWlanOutput

func (o WlanOutput) ToWlanOutput() WlanOutput

func (WlanOutput) ToWlanOutputWithContext

func (o WlanOutput) ToWlanOutputWithContext(ctx context.Context) WlanOutput

func (WlanOutput) Uapsd

func (o WlanOutput) Uapsd() pulumi.BoolPtrOutput

Enable Unscheduled Automatic Power Save Delivery. Defaults to `false`.

func (WlanOutput) UserGroupId

func (o WlanOutput) UserGroupId() pulumi.StringOutput

ID of the user group to use for this network.

func (WlanOutput) WlanBand

func (o WlanOutput) WlanBand() pulumi.StringPtrOutput

Radio band your WiFi network will use. Defaults to `both`.

func (WlanOutput) Wpa3Support

func (o WlanOutput) Wpa3Support() pulumi.BoolPtrOutput

Enable WPA 3 support (security must be `wpapsk` and PMF must be turned on).

func (WlanOutput) Wpa3Transition

func (o WlanOutput) Wpa3Transition() pulumi.BoolPtrOutput

Enable WPA 3 and WPA 2 support (security must be `wpapsk` and `wpa3Support` must be true).

type WlanSchedule

type WlanSchedule struct {
	// Day of week for the block. Valid values are `sun`, `mon`, `tue`, `wed`, `thu`, `fri`, `sat`.
	DayOfWeek string `pulumi:"dayOfWeek"`
	// Length of the block in minutes.
	Duration int `pulumi:"duration"`
	// Name of the block.
	Name *string `pulumi:"name"`
	// Start hour for the block (0-23).
	StartHour int `pulumi:"startHour"`
	// Start minute for the block (0-59). Defaults to `0`.
	StartMinute *int `pulumi:"startMinute"`
}

type WlanScheduleArgs

type WlanScheduleArgs struct {
	// Day of week for the block. Valid values are `sun`, `mon`, `tue`, `wed`, `thu`, `fri`, `sat`.
	DayOfWeek pulumi.StringInput `pulumi:"dayOfWeek"`
	// Length of the block in minutes.
	Duration pulumi.IntInput `pulumi:"duration"`
	// Name of the block.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Start hour for the block (0-23).
	StartHour pulumi.IntInput `pulumi:"startHour"`
	// Start minute for the block (0-59). Defaults to `0`.
	StartMinute pulumi.IntPtrInput `pulumi:"startMinute"`
}

func (WlanScheduleArgs) ElementType

func (WlanScheduleArgs) ElementType() reflect.Type

func (WlanScheduleArgs) ToOutput

func (WlanScheduleArgs) ToWlanScheduleOutput

func (i WlanScheduleArgs) ToWlanScheduleOutput() WlanScheduleOutput

func (WlanScheduleArgs) ToWlanScheduleOutputWithContext

func (i WlanScheduleArgs) ToWlanScheduleOutputWithContext(ctx context.Context) WlanScheduleOutput

type WlanScheduleArray

type WlanScheduleArray []WlanScheduleInput

func (WlanScheduleArray) ElementType

func (WlanScheduleArray) ElementType() reflect.Type

func (WlanScheduleArray) ToOutput

func (WlanScheduleArray) ToWlanScheduleArrayOutput

func (i WlanScheduleArray) ToWlanScheduleArrayOutput() WlanScheduleArrayOutput

func (WlanScheduleArray) ToWlanScheduleArrayOutputWithContext

func (i WlanScheduleArray) ToWlanScheduleArrayOutputWithContext(ctx context.Context) WlanScheduleArrayOutput

type WlanScheduleArrayInput

type WlanScheduleArrayInput interface {
	pulumi.Input

	ToWlanScheduleArrayOutput() WlanScheduleArrayOutput
	ToWlanScheduleArrayOutputWithContext(context.Context) WlanScheduleArrayOutput
}

WlanScheduleArrayInput is an input type that accepts WlanScheduleArray and WlanScheduleArrayOutput values. You can construct a concrete instance of `WlanScheduleArrayInput` via:

WlanScheduleArray{ WlanScheduleArgs{...} }

type WlanScheduleArrayOutput

type WlanScheduleArrayOutput struct{ *pulumi.OutputState }

func (WlanScheduleArrayOutput) ElementType

func (WlanScheduleArrayOutput) ElementType() reflect.Type

func (WlanScheduleArrayOutput) Index

func (WlanScheduleArrayOutput) ToOutput

func (WlanScheduleArrayOutput) ToWlanScheduleArrayOutput

func (o WlanScheduleArrayOutput) ToWlanScheduleArrayOutput() WlanScheduleArrayOutput

func (WlanScheduleArrayOutput) ToWlanScheduleArrayOutputWithContext

func (o WlanScheduleArrayOutput) ToWlanScheduleArrayOutputWithContext(ctx context.Context) WlanScheduleArrayOutput

type WlanScheduleInput

type WlanScheduleInput interface {
	pulumi.Input

	ToWlanScheduleOutput() WlanScheduleOutput
	ToWlanScheduleOutputWithContext(context.Context) WlanScheduleOutput
}

WlanScheduleInput is an input type that accepts WlanScheduleArgs and WlanScheduleOutput values. You can construct a concrete instance of `WlanScheduleInput` via:

WlanScheduleArgs{...}

type WlanScheduleOutput

type WlanScheduleOutput struct{ *pulumi.OutputState }

func (WlanScheduleOutput) DayOfWeek

func (o WlanScheduleOutput) DayOfWeek() pulumi.StringOutput

Day of week for the block. Valid values are `sun`, `mon`, `tue`, `wed`, `thu`, `fri`, `sat`.

func (WlanScheduleOutput) Duration

func (o WlanScheduleOutput) Duration() pulumi.IntOutput

Length of the block in minutes.

func (WlanScheduleOutput) ElementType

func (WlanScheduleOutput) ElementType() reflect.Type

func (WlanScheduleOutput) Name

Name of the block.

func (WlanScheduleOutput) StartHour

func (o WlanScheduleOutput) StartHour() pulumi.IntOutput

Start hour for the block (0-23).

func (WlanScheduleOutput) StartMinute

func (o WlanScheduleOutput) StartMinute() pulumi.IntPtrOutput

Start minute for the block (0-59). Defaults to `0`.

func (WlanScheduleOutput) ToOutput

func (WlanScheduleOutput) ToWlanScheduleOutput

func (o WlanScheduleOutput) ToWlanScheduleOutput() WlanScheduleOutput

func (WlanScheduleOutput) ToWlanScheduleOutputWithContext

func (o WlanScheduleOutput) ToWlanScheduleOutputWithContext(ctx context.Context) WlanScheduleOutput

type WlanState

type WlanState struct {
	// IDs of the AP groups to use for this network.
	ApGroupIds pulumi.StringArrayInput
	// Improves client transitions between APs when they have a weak signal. Defaults to `true`.
	BssTransition pulumi.BoolPtrInput
	// Enables 802.11r fast roaming. Defaults to `false`.
	FastRoamingEnabled pulumi.BoolPtrInput
	// Indicates whether or not to hide the SSID from broadcast.
	HideSsid pulumi.BoolPtrInput
	// Indicates that this is a guest WLAN and should use guest behaviors.
	IsGuest pulumi.BoolPtrInput
	// Isolates stations on layer 2 (ethernet) level. Defaults to `false`.
	L2Isolation pulumi.BoolPtrInput
	// Indicates whether or not the MAC filter is turned of for the network.
	MacFilterEnabled pulumi.BoolPtrInput
	// List of MAC addresses to filter (only valid if `macFilterEnabled` is `true`).
	MacFilterLists pulumi.StringArrayInput
	// MAC address filter policy (only valid if `macFilterEnabled` is `true`). Defaults to `deny`.
	MacFilterPolicy pulumi.StringPtrInput
	// Set minimum data rate control for 2G devices, in Kbps. Use `0` to disable minimum data rates. Valid values are: `1000`, `2000`, `5500`, `6000`, `9000`, `11000`, `12000`, `18000`, `24000`, `36000`, `48000`,  and `54000`.
	MinimumDataRate2gKbps pulumi.IntPtrInput
	// Set minimum data rate control for 5G devices, in Kbps. Use `0` to disable minimum data rates. Valid values are: `6000`, `9000`, `12000`, `18000`, `24000`, `36000`, `48000`,  and `54000`.
	MinimumDataRate5gKbps pulumi.IntPtrInput
	// Indicates whether or not Multicast Enhance is turned of for the network.
	MulticastEnhance pulumi.BoolPtrInput
	// The SSID of the network.
	Name pulumi.StringPtrInput
	// ID of the network for this SSID
	NetworkId pulumi.StringPtrInput
	// Connect high performance clients to 5 GHz only. Defaults to `true`.
	No2ghzOui pulumi.BoolPtrInput
	// The passphrase for the network, this is only required if `security` is not set to `open`.
	Passphrase pulumi.StringPtrInput
	// Enable Protected Management Frames. This cannot be disabled if using WPA 3. Valid values are `required`, `optional` and `disabled`. Defaults to `disabled`.
	PmfMode pulumi.StringPtrInput
	// Reduces airtime usage by allowing APs to "proxy" common broadcast frames as unicast. Defaults to `false`.
	ProxyArp pulumi.BoolPtrInput
	// ID of the RADIUS profile to use when security `wpaeap`. You can query this via the `RadiusProfile` data source.
	RadiusProfileId pulumi.StringPtrInput
	// Start and stop schedules for the WLAN
	Schedules WlanScheduleArrayInput
	// The type of WiFi security for this network. Valid values are: `wpapsk`, `wpaeap`, and `open`.
	Security pulumi.StringPtrInput
	// The name of the site to associate the wlan with.
	Site pulumi.StringPtrInput
	// Enable Unscheduled Automatic Power Save Delivery. Defaults to `false`.
	Uapsd pulumi.BoolPtrInput
	// ID of the user group to use for this network.
	UserGroupId pulumi.StringPtrInput
	// Radio band your WiFi network will use. Defaults to `both`.
	WlanBand pulumi.StringPtrInput
	// Enable WPA 3 support (security must be `wpapsk` and PMF must be turned on).
	Wpa3Support pulumi.BoolPtrInput
	// Enable WPA 3 and WPA 2 support (security must be `wpapsk` and `wpa3Support` must be true).
	Wpa3Transition pulumi.BoolPtrInput
}

func (WlanState) ElementType

func (WlanState) ElementType() reflect.Type

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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