networking

package
v3.15.2 Latest Latest
Warning

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

Go to latest
Published: Mar 29, 2024 License: Apache-2.0 Imports: 7 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddressScope

type AddressScope struct {
	pulumi.CustomResourceState

	// IP version, either 4 (default) or 6. Changing this
	// creates a new address-scope.
	IpVersion pulumi.IntPtrOutput `pulumi:"ipVersion"`
	// The name of the address-scope. Changing this updates the
	// name of the existing address-scope.
	Name pulumi.StringOutput `pulumi:"name"`
	// The owner of the address-scope. Required if admin
	// wants to create a address-scope for another project. Changing this creates a
	// new address-scope.
	ProjectId pulumi.StringOutput `pulumi:"projectId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron address-scope. If omitted,
	// the `region` argument of the provider is used. Changing this creates a new
	// address-scope.
	Region pulumi.StringOutput `pulumi:"region"`
	// Indicates whether this address-scope is shared across
	// all projects. Changing this updates the shared status of the existing
	// address-scope.
	Shared pulumi.BoolOutput `pulumi:"shared"`
}

Manages a V2 Neutron addressscope resource within OpenStack.

## Example Usage

### Create an Address-scope

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.NewAddressScope(ctx, "addressscope1", &networking.AddressScopeArgs{
			IpVersion: pulumi.Int(6),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

### Create a Subnet Pool from an Address-scope

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		addressscope1, err := networking.NewAddressScope(ctx, "addressscope1", &networking.AddressScopeArgs{
			IpVersion: pulumi.Int(6),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewSubnetPool(ctx, "subnetpool1", &networking.SubnetPoolArgs{
			Prefixes: pulumi.StringArray{
				pulumi.String("fdf7:b13d:dead:beef::/64"),
				pulumi.String("fd65:86cc:a334:39b7::/64"),
			},
			AddressScopeId: addressscope1.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Address-scopes can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/addressScope:AddressScope addressscope_1 9cc35860-522a-4d35-974d-51d4b011801e ```

func GetAddressScope

func GetAddressScope(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AddressScopeState, opts ...pulumi.ResourceOption) (*AddressScope, error)

GetAddressScope gets an existing AddressScope 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 NewAddressScope

func NewAddressScope(ctx *pulumi.Context,
	name string, args *AddressScopeArgs, opts ...pulumi.ResourceOption) (*AddressScope, error)

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

func (*AddressScope) ElementType

func (*AddressScope) ElementType() reflect.Type

func (*AddressScope) ToAddressScopeOutput

func (i *AddressScope) ToAddressScopeOutput() AddressScopeOutput

func (*AddressScope) ToAddressScopeOutputWithContext

func (i *AddressScope) ToAddressScopeOutputWithContext(ctx context.Context) AddressScopeOutput

type AddressScopeArgs

type AddressScopeArgs struct {
	// IP version, either 4 (default) or 6. Changing this
	// creates a new address-scope.
	IpVersion pulumi.IntPtrInput
	// The name of the address-scope. Changing this updates the
	// name of the existing address-scope.
	Name pulumi.StringPtrInput
	// The owner of the address-scope. Required if admin
	// wants to create a address-scope for another project. Changing this creates a
	// new address-scope.
	ProjectId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron address-scope. If omitted,
	// the `region` argument of the provider is used. Changing this creates a new
	// address-scope.
	Region pulumi.StringPtrInput
	// Indicates whether this address-scope is shared across
	// all projects. Changing this updates the shared status of the existing
	// address-scope.
	Shared pulumi.BoolPtrInput
}

The set of arguments for constructing a AddressScope resource.

func (AddressScopeArgs) ElementType

func (AddressScopeArgs) ElementType() reflect.Type

type AddressScopeArray

type AddressScopeArray []AddressScopeInput

func (AddressScopeArray) ElementType

func (AddressScopeArray) ElementType() reflect.Type

func (AddressScopeArray) ToAddressScopeArrayOutput

func (i AddressScopeArray) ToAddressScopeArrayOutput() AddressScopeArrayOutput

func (AddressScopeArray) ToAddressScopeArrayOutputWithContext

func (i AddressScopeArray) ToAddressScopeArrayOutputWithContext(ctx context.Context) AddressScopeArrayOutput

type AddressScopeArrayInput

type AddressScopeArrayInput interface {
	pulumi.Input

	ToAddressScopeArrayOutput() AddressScopeArrayOutput
	ToAddressScopeArrayOutputWithContext(context.Context) AddressScopeArrayOutput
}

AddressScopeArrayInput is an input type that accepts AddressScopeArray and AddressScopeArrayOutput values. You can construct a concrete instance of `AddressScopeArrayInput` via:

AddressScopeArray{ AddressScopeArgs{...} }

type AddressScopeArrayOutput

type AddressScopeArrayOutput struct{ *pulumi.OutputState }

func (AddressScopeArrayOutput) ElementType

func (AddressScopeArrayOutput) ElementType() reflect.Type

func (AddressScopeArrayOutput) Index

func (AddressScopeArrayOutput) ToAddressScopeArrayOutput

func (o AddressScopeArrayOutput) ToAddressScopeArrayOutput() AddressScopeArrayOutput

func (AddressScopeArrayOutput) ToAddressScopeArrayOutputWithContext

func (o AddressScopeArrayOutput) ToAddressScopeArrayOutputWithContext(ctx context.Context) AddressScopeArrayOutput

type AddressScopeInput

type AddressScopeInput interface {
	pulumi.Input

	ToAddressScopeOutput() AddressScopeOutput
	ToAddressScopeOutputWithContext(ctx context.Context) AddressScopeOutput
}

type AddressScopeMap

type AddressScopeMap map[string]AddressScopeInput

func (AddressScopeMap) ElementType

func (AddressScopeMap) ElementType() reflect.Type

func (AddressScopeMap) ToAddressScopeMapOutput

func (i AddressScopeMap) ToAddressScopeMapOutput() AddressScopeMapOutput

func (AddressScopeMap) ToAddressScopeMapOutputWithContext

func (i AddressScopeMap) ToAddressScopeMapOutputWithContext(ctx context.Context) AddressScopeMapOutput

type AddressScopeMapInput

type AddressScopeMapInput interface {
	pulumi.Input

	ToAddressScopeMapOutput() AddressScopeMapOutput
	ToAddressScopeMapOutputWithContext(context.Context) AddressScopeMapOutput
}

AddressScopeMapInput is an input type that accepts AddressScopeMap and AddressScopeMapOutput values. You can construct a concrete instance of `AddressScopeMapInput` via:

AddressScopeMap{ "key": AddressScopeArgs{...} }

type AddressScopeMapOutput

type AddressScopeMapOutput struct{ *pulumi.OutputState }

func (AddressScopeMapOutput) ElementType

func (AddressScopeMapOutput) ElementType() reflect.Type

func (AddressScopeMapOutput) MapIndex

func (AddressScopeMapOutput) ToAddressScopeMapOutput

func (o AddressScopeMapOutput) ToAddressScopeMapOutput() AddressScopeMapOutput

func (AddressScopeMapOutput) ToAddressScopeMapOutputWithContext

func (o AddressScopeMapOutput) ToAddressScopeMapOutputWithContext(ctx context.Context) AddressScopeMapOutput

type AddressScopeOutput

type AddressScopeOutput struct{ *pulumi.OutputState }

func (AddressScopeOutput) ElementType

func (AddressScopeOutput) ElementType() reflect.Type

func (AddressScopeOutput) IpVersion added in v3.9.0

func (o AddressScopeOutput) IpVersion() pulumi.IntPtrOutput

IP version, either 4 (default) or 6. Changing this creates a new address-scope.

func (AddressScopeOutput) Name added in v3.9.0

The name of the address-scope. Changing this updates the name of the existing address-scope.

func (AddressScopeOutput) ProjectId added in v3.9.0

func (o AddressScopeOutput) ProjectId() pulumi.StringOutput

The owner of the address-scope. Required if admin wants to create a address-scope for another project. Changing this creates a new address-scope.

func (AddressScopeOutput) Region added in v3.9.0

The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron address-scope. If omitted, the `region` argument of the provider is used. Changing this creates a new address-scope.

func (AddressScopeOutput) Shared added in v3.9.0

Indicates whether this address-scope is shared across all projects. Changing this updates the shared status of the existing address-scope.

func (AddressScopeOutput) ToAddressScopeOutput

func (o AddressScopeOutput) ToAddressScopeOutput() AddressScopeOutput

func (AddressScopeOutput) ToAddressScopeOutputWithContext

func (o AddressScopeOutput) ToAddressScopeOutputWithContext(ctx context.Context) AddressScopeOutput

type AddressScopeState

type AddressScopeState struct {
	// IP version, either 4 (default) or 6. Changing this
	// creates a new address-scope.
	IpVersion pulumi.IntPtrInput
	// The name of the address-scope. Changing this updates the
	// name of the existing address-scope.
	Name pulumi.StringPtrInput
	// The owner of the address-scope. Required if admin
	// wants to create a address-scope for another project. Changing this creates a
	// new address-scope.
	ProjectId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron address-scope. If omitted,
	// the `region` argument of the provider is used. Changing this creates a new
	// address-scope.
	Region pulumi.StringPtrInput
	// Indicates whether this address-scope is shared across
	// all projects. Changing this updates the shared status of the existing
	// address-scope.
	Shared pulumi.BoolPtrInput
}

func (AddressScopeState) ElementType

func (AddressScopeState) ElementType() reflect.Type

type FloatingIp

type FloatingIp struct {
	pulumi.CustomResourceState

	// The actual/specific floating IP to obtain. By default,
	// non-admin users are not able to specify a floating IP, so you must either be
	// an admin user or have had a custom policy or role applied to your OpenStack
	// user or project.
	Address pulumi.StringOutput `pulumi:"address"`
	// The collection of tags assigned on the floating IP, which have
	// been explicitly and implicitly added.
	AllTags pulumi.StringArrayOutput `pulumi:"allTags"`
	// Human-readable description for the floating IP.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The floating IP DNS domain. Available, when Neutron
	// DNS extension is enabled. The data in this attribute will be published in an
	// external DNS service when Neutron is configured to integrate with such a
	// service. Changing this creates a new floating IP.
	DnsDomain pulumi.StringOutput `pulumi:"dnsDomain"`
	// The floating IP DNS name. Available, when Neutron DNS
	// extension is enabled. The data in this attribute will be published in an
	// external DNS service when Neutron is configured to integrate with such a
	// service. Changing this creates a new floating IP.
	DnsName pulumi.StringOutput `pulumi:"dnsName"`
	// Fixed IP of the port to associate with this floating IP. Required if
	// the port has multiple fixed IPs.
	FixedIp pulumi.StringOutput `pulumi:"fixedIp"`
	// The name of the pool from which to obtain the floating
	// IP. Changing this creates a new floating IP.
	Pool pulumi.StringOutput `pulumi:"pool"`
	// ID of an existing port with at least one IP address to
	// associate with this floating IP.
	PortId pulumi.StringOutput `pulumi:"portId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a floating IP that can be used with
	// another networking resource, such as a load balancer. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// floating IP (which may or may not have a different address).
	Region pulumi.StringOutput `pulumi:"region"`
	// The subnet ID of the floating IP pool. Specify this if
	// the floating IP network has multiple subnets.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// A list of external subnet IDs to try over each to
	// allocate a floating IP address. If a subnet ID in a list has exhausted
	// floating IP pool, the next subnet ID will be tried. This argument is used only
	// during the resource creation. Conflicts with a `subnetId` argument.
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// A set of string tags for the floating IP.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// The target tenant ID in which to allocate the floating
	// IP, if you specify this together with a port_id, make sure the target port
	// belongs to the same tenant. Changing this creates a new floating IP (which
	// may or may not have a different address)
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
	// Map of additional options.
	ValueSpecs pulumi.MapOutput `pulumi:"valueSpecs"`
}

## Import

Floating IPs can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/floatingIp:FloatingIp floatip_1 2c7f39f3-702b-48d1-940c-b50384177ee1 ```

func GetFloatingIp

func GetFloatingIp(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FloatingIpState, opts ...pulumi.ResourceOption) (*FloatingIp, error)

GetFloatingIp gets an existing FloatingIp 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 NewFloatingIp

func NewFloatingIp(ctx *pulumi.Context,
	name string, args *FloatingIpArgs, opts ...pulumi.ResourceOption) (*FloatingIp, error)

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

func (*FloatingIp) ElementType

func (*FloatingIp) ElementType() reflect.Type

func (*FloatingIp) ToFloatingIpOutput

func (i *FloatingIp) ToFloatingIpOutput() FloatingIpOutput

func (*FloatingIp) ToFloatingIpOutputWithContext

func (i *FloatingIp) ToFloatingIpOutputWithContext(ctx context.Context) FloatingIpOutput

type FloatingIpArgs

type FloatingIpArgs struct {
	// The actual/specific floating IP to obtain. By default,
	// non-admin users are not able to specify a floating IP, so you must either be
	// an admin user or have had a custom policy or role applied to your OpenStack
	// user or project.
	Address pulumi.StringPtrInput
	// Human-readable description for the floating IP.
	Description pulumi.StringPtrInput
	// The floating IP DNS domain. Available, when Neutron
	// DNS extension is enabled. The data in this attribute will be published in an
	// external DNS service when Neutron is configured to integrate with such a
	// service. Changing this creates a new floating IP.
	DnsDomain pulumi.StringPtrInput
	// The floating IP DNS name. Available, when Neutron DNS
	// extension is enabled. The data in this attribute will be published in an
	// external DNS service when Neutron is configured to integrate with such a
	// service. Changing this creates a new floating IP.
	DnsName pulumi.StringPtrInput
	// Fixed IP of the port to associate with this floating IP. Required if
	// the port has multiple fixed IPs.
	FixedIp pulumi.StringPtrInput
	// The name of the pool from which to obtain the floating
	// IP. Changing this creates a new floating IP.
	Pool pulumi.StringInput
	// ID of an existing port with at least one IP address to
	// associate with this floating IP.
	PortId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a floating IP that can be used with
	// another networking resource, such as a load balancer. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// floating IP (which may or may not have a different address).
	Region pulumi.StringPtrInput
	// The subnet ID of the floating IP pool. Specify this if
	// the floating IP network has multiple subnets.
	SubnetId pulumi.StringPtrInput
	// A list of external subnet IDs to try over each to
	// allocate a floating IP address. If a subnet ID in a list has exhausted
	// floating IP pool, the next subnet ID will be tried. This argument is used only
	// during the resource creation. Conflicts with a `subnetId` argument.
	SubnetIds pulumi.StringArrayInput
	// A set of string tags for the floating IP.
	Tags pulumi.StringArrayInput
	// The target tenant ID in which to allocate the floating
	// IP, if you specify this together with a port_id, make sure the target port
	// belongs to the same tenant. Changing this creates a new floating IP (which
	// may or may not have a different address)
	TenantId pulumi.StringPtrInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

The set of arguments for constructing a FloatingIp resource.

func (FloatingIpArgs) ElementType

func (FloatingIpArgs) ElementType() reflect.Type

type FloatingIpArray

type FloatingIpArray []FloatingIpInput

func (FloatingIpArray) ElementType

func (FloatingIpArray) ElementType() reflect.Type

func (FloatingIpArray) ToFloatingIpArrayOutput

func (i FloatingIpArray) ToFloatingIpArrayOutput() FloatingIpArrayOutput

func (FloatingIpArray) ToFloatingIpArrayOutputWithContext

func (i FloatingIpArray) ToFloatingIpArrayOutputWithContext(ctx context.Context) FloatingIpArrayOutput

type FloatingIpArrayInput

type FloatingIpArrayInput interface {
	pulumi.Input

	ToFloatingIpArrayOutput() FloatingIpArrayOutput
	ToFloatingIpArrayOutputWithContext(context.Context) FloatingIpArrayOutput
}

FloatingIpArrayInput is an input type that accepts FloatingIpArray and FloatingIpArrayOutput values. You can construct a concrete instance of `FloatingIpArrayInput` via:

FloatingIpArray{ FloatingIpArgs{...} }

type FloatingIpArrayOutput

type FloatingIpArrayOutput struct{ *pulumi.OutputState }

func (FloatingIpArrayOutput) ElementType

func (FloatingIpArrayOutput) ElementType() reflect.Type

func (FloatingIpArrayOutput) Index

func (FloatingIpArrayOutput) ToFloatingIpArrayOutput

func (o FloatingIpArrayOutput) ToFloatingIpArrayOutput() FloatingIpArrayOutput

func (FloatingIpArrayOutput) ToFloatingIpArrayOutputWithContext

func (o FloatingIpArrayOutput) ToFloatingIpArrayOutputWithContext(ctx context.Context) FloatingIpArrayOutput

type FloatingIpAssociate

type FloatingIpAssociate struct {
	pulumi.CustomResourceState

	FixedIp pulumi.StringOutput `pulumi:"fixedIp"`
	// IP Address of an existing floating IP.
	FloatingIp pulumi.StringOutput `pulumi:"floatingIp"`
	// ID of an existing port with at least one IP address to
	// associate with this floating IP.
	PortId pulumi.StringOutput `pulumi:"portId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a floating IP that can be used with
	// another networking resource, such as a load balancer. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// floating IP (which may or may not have a different address).
	Region pulumi.StringOutput `pulumi:"region"`
}

Associates a floating IP to a port. This is useful for situations where you have a pre-allocated floating IP or are unable to use the `networking.FloatingIp` resource to create a floating IP.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		port1, err := networking.NewPort(ctx, "port1", &networking.PortArgs{
			NetworkId: pulumi.String("a5bbd213-e1d3-49b6-aed1-9df60ea94b9a"),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewFloatingIpAssociate(ctx, "fip1", &networking.FloatingIpAssociateArgs{
			FloatingIp: pulumi.String("1.2.3.4"),
			PortId:     port1.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Floating IP associations can be imported using the `id` of the floating IP, e.g.

```sh $ pulumi import openstack:networking/floatingIpAssociate:FloatingIpAssociate fip 2c7f39f3-702b-48d1-940c-b50384177ee1 ```

func GetFloatingIpAssociate

func GetFloatingIpAssociate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FloatingIpAssociateState, opts ...pulumi.ResourceOption) (*FloatingIpAssociate, error)

GetFloatingIpAssociate gets an existing FloatingIpAssociate 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 NewFloatingIpAssociate

func NewFloatingIpAssociate(ctx *pulumi.Context,
	name string, args *FloatingIpAssociateArgs, opts ...pulumi.ResourceOption) (*FloatingIpAssociate, error)

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

func (*FloatingIpAssociate) ElementType

func (*FloatingIpAssociate) ElementType() reflect.Type

func (*FloatingIpAssociate) ToFloatingIpAssociateOutput

func (i *FloatingIpAssociate) ToFloatingIpAssociateOutput() FloatingIpAssociateOutput

func (*FloatingIpAssociate) ToFloatingIpAssociateOutputWithContext

func (i *FloatingIpAssociate) ToFloatingIpAssociateOutputWithContext(ctx context.Context) FloatingIpAssociateOutput

type FloatingIpAssociateArgs

type FloatingIpAssociateArgs struct {
	FixedIp pulumi.StringPtrInput
	// IP Address of an existing floating IP.
	FloatingIp pulumi.StringInput
	// ID of an existing port with at least one IP address to
	// associate with this floating IP.
	PortId pulumi.StringInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a floating IP that can be used with
	// another networking resource, such as a load balancer. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// floating IP (which may or may not have a different address).
	Region pulumi.StringPtrInput
}

The set of arguments for constructing a FloatingIpAssociate resource.

func (FloatingIpAssociateArgs) ElementType

func (FloatingIpAssociateArgs) ElementType() reflect.Type

type FloatingIpAssociateArray

type FloatingIpAssociateArray []FloatingIpAssociateInput

func (FloatingIpAssociateArray) ElementType

func (FloatingIpAssociateArray) ElementType() reflect.Type

func (FloatingIpAssociateArray) ToFloatingIpAssociateArrayOutput

func (i FloatingIpAssociateArray) ToFloatingIpAssociateArrayOutput() FloatingIpAssociateArrayOutput

func (FloatingIpAssociateArray) ToFloatingIpAssociateArrayOutputWithContext

func (i FloatingIpAssociateArray) ToFloatingIpAssociateArrayOutputWithContext(ctx context.Context) FloatingIpAssociateArrayOutput

type FloatingIpAssociateArrayInput

type FloatingIpAssociateArrayInput interface {
	pulumi.Input

	ToFloatingIpAssociateArrayOutput() FloatingIpAssociateArrayOutput
	ToFloatingIpAssociateArrayOutputWithContext(context.Context) FloatingIpAssociateArrayOutput
}

FloatingIpAssociateArrayInput is an input type that accepts FloatingIpAssociateArray and FloatingIpAssociateArrayOutput values. You can construct a concrete instance of `FloatingIpAssociateArrayInput` via:

FloatingIpAssociateArray{ FloatingIpAssociateArgs{...} }

type FloatingIpAssociateArrayOutput

type FloatingIpAssociateArrayOutput struct{ *pulumi.OutputState }

func (FloatingIpAssociateArrayOutput) ElementType

func (FloatingIpAssociateArrayOutput) Index

func (FloatingIpAssociateArrayOutput) ToFloatingIpAssociateArrayOutput

func (o FloatingIpAssociateArrayOutput) ToFloatingIpAssociateArrayOutput() FloatingIpAssociateArrayOutput

func (FloatingIpAssociateArrayOutput) ToFloatingIpAssociateArrayOutputWithContext

func (o FloatingIpAssociateArrayOutput) ToFloatingIpAssociateArrayOutputWithContext(ctx context.Context) FloatingIpAssociateArrayOutput

type FloatingIpAssociateInput

type FloatingIpAssociateInput interface {
	pulumi.Input

	ToFloatingIpAssociateOutput() FloatingIpAssociateOutput
	ToFloatingIpAssociateOutputWithContext(ctx context.Context) FloatingIpAssociateOutput
}

type FloatingIpAssociateMap

type FloatingIpAssociateMap map[string]FloatingIpAssociateInput

func (FloatingIpAssociateMap) ElementType

func (FloatingIpAssociateMap) ElementType() reflect.Type

func (FloatingIpAssociateMap) ToFloatingIpAssociateMapOutput

func (i FloatingIpAssociateMap) ToFloatingIpAssociateMapOutput() FloatingIpAssociateMapOutput

func (FloatingIpAssociateMap) ToFloatingIpAssociateMapOutputWithContext

func (i FloatingIpAssociateMap) ToFloatingIpAssociateMapOutputWithContext(ctx context.Context) FloatingIpAssociateMapOutput

type FloatingIpAssociateMapInput

type FloatingIpAssociateMapInput interface {
	pulumi.Input

	ToFloatingIpAssociateMapOutput() FloatingIpAssociateMapOutput
	ToFloatingIpAssociateMapOutputWithContext(context.Context) FloatingIpAssociateMapOutput
}

FloatingIpAssociateMapInput is an input type that accepts FloatingIpAssociateMap and FloatingIpAssociateMapOutput values. You can construct a concrete instance of `FloatingIpAssociateMapInput` via:

FloatingIpAssociateMap{ "key": FloatingIpAssociateArgs{...} }

type FloatingIpAssociateMapOutput

type FloatingIpAssociateMapOutput struct{ *pulumi.OutputState }

func (FloatingIpAssociateMapOutput) ElementType

func (FloatingIpAssociateMapOutput) MapIndex

func (FloatingIpAssociateMapOutput) ToFloatingIpAssociateMapOutput

func (o FloatingIpAssociateMapOutput) ToFloatingIpAssociateMapOutput() FloatingIpAssociateMapOutput

func (FloatingIpAssociateMapOutput) ToFloatingIpAssociateMapOutputWithContext

func (o FloatingIpAssociateMapOutput) ToFloatingIpAssociateMapOutputWithContext(ctx context.Context) FloatingIpAssociateMapOutput

type FloatingIpAssociateOutput

type FloatingIpAssociateOutput struct{ *pulumi.OutputState }

func (FloatingIpAssociateOutput) ElementType

func (FloatingIpAssociateOutput) ElementType() reflect.Type

func (FloatingIpAssociateOutput) FixedIp added in v3.9.0

func (FloatingIpAssociateOutput) FloatingIp added in v3.9.0

IP Address of an existing floating IP.

func (FloatingIpAssociateOutput) PortId added in v3.9.0

ID of an existing port with at least one IP address to associate with this floating IP.

func (FloatingIpAssociateOutput) Region added in v3.9.0

The region in which to obtain the V2 Networking client. A Networking client is needed to create a floating IP that can be used with another networking resource, such as a load balancer. If omitted, the `region` argument of the provider is used. Changing this creates a new floating IP (which may or may not have a different address).

func (FloatingIpAssociateOutput) ToFloatingIpAssociateOutput

func (o FloatingIpAssociateOutput) ToFloatingIpAssociateOutput() FloatingIpAssociateOutput

func (FloatingIpAssociateOutput) ToFloatingIpAssociateOutputWithContext

func (o FloatingIpAssociateOutput) ToFloatingIpAssociateOutputWithContext(ctx context.Context) FloatingIpAssociateOutput

type FloatingIpAssociateState

type FloatingIpAssociateState struct {
	FixedIp pulumi.StringPtrInput
	// IP Address of an existing floating IP.
	FloatingIp pulumi.StringPtrInput
	// ID of an existing port with at least one IP address to
	// associate with this floating IP.
	PortId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a floating IP that can be used with
	// another networking resource, such as a load balancer. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// floating IP (which may or may not have a different address).
	Region pulumi.StringPtrInput
}

func (FloatingIpAssociateState) ElementType

func (FloatingIpAssociateState) ElementType() reflect.Type

type FloatingIpInput

type FloatingIpInput interface {
	pulumi.Input

	ToFloatingIpOutput() FloatingIpOutput
	ToFloatingIpOutputWithContext(ctx context.Context) FloatingIpOutput
}

type FloatingIpMap

type FloatingIpMap map[string]FloatingIpInput

func (FloatingIpMap) ElementType

func (FloatingIpMap) ElementType() reflect.Type

func (FloatingIpMap) ToFloatingIpMapOutput

func (i FloatingIpMap) ToFloatingIpMapOutput() FloatingIpMapOutput

func (FloatingIpMap) ToFloatingIpMapOutputWithContext

func (i FloatingIpMap) ToFloatingIpMapOutputWithContext(ctx context.Context) FloatingIpMapOutput

type FloatingIpMapInput

type FloatingIpMapInput interface {
	pulumi.Input

	ToFloatingIpMapOutput() FloatingIpMapOutput
	ToFloatingIpMapOutputWithContext(context.Context) FloatingIpMapOutput
}

FloatingIpMapInput is an input type that accepts FloatingIpMap and FloatingIpMapOutput values. You can construct a concrete instance of `FloatingIpMapInput` via:

FloatingIpMap{ "key": FloatingIpArgs{...} }

type FloatingIpMapOutput

type FloatingIpMapOutput struct{ *pulumi.OutputState }

func (FloatingIpMapOutput) ElementType

func (FloatingIpMapOutput) ElementType() reflect.Type

func (FloatingIpMapOutput) MapIndex

func (FloatingIpMapOutput) ToFloatingIpMapOutput

func (o FloatingIpMapOutput) ToFloatingIpMapOutput() FloatingIpMapOutput

func (FloatingIpMapOutput) ToFloatingIpMapOutputWithContext

func (o FloatingIpMapOutput) ToFloatingIpMapOutputWithContext(ctx context.Context) FloatingIpMapOutput

type FloatingIpOutput

type FloatingIpOutput struct{ *pulumi.OutputState }

func (FloatingIpOutput) Address added in v3.9.0

func (o FloatingIpOutput) Address() pulumi.StringOutput

The actual/specific floating IP to obtain. By default, non-admin users are not able to specify a floating IP, so you must either be an admin user or have had a custom policy or role applied to your OpenStack user or project.

func (FloatingIpOutput) AllTags added in v3.9.0

The collection of tags assigned on the floating IP, which have been explicitly and implicitly added.

func (FloatingIpOutput) Description added in v3.9.0

func (o FloatingIpOutput) Description() pulumi.StringPtrOutput

Human-readable description for the floating IP.

func (FloatingIpOutput) DnsDomain added in v3.9.0

func (o FloatingIpOutput) DnsDomain() pulumi.StringOutput

The floating IP DNS domain. Available, when Neutron DNS extension is enabled. The data in this attribute will be published in an external DNS service when Neutron is configured to integrate with such a service. Changing this creates a new floating IP.

func (FloatingIpOutput) DnsName added in v3.9.0

func (o FloatingIpOutput) DnsName() pulumi.StringOutput

The floating IP DNS name. Available, when Neutron DNS extension is enabled. The data in this attribute will be published in an external DNS service when Neutron is configured to integrate with such a service. Changing this creates a new floating IP.

func (FloatingIpOutput) ElementType

func (FloatingIpOutput) ElementType() reflect.Type

func (FloatingIpOutput) FixedIp added in v3.9.0

func (o FloatingIpOutput) FixedIp() pulumi.StringOutput

Fixed IP of the port to associate with this floating IP. Required if the port has multiple fixed IPs.

func (FloatingIpOutput) Pool added in v3.9.0

The name of the pool from which to obtain the floating IP. Changing this creates a new floating IP.

func (FloatingIpOutput) PortId added in v3.9.0

ID of an existing port with at least one IP address to associate with this floating IP.

func (FloatingIpOutput) Region added in v3.9.0

The region in which to obtain the V2 Networking client. A Networking client is needed to create a floating IP that can be used with another networking resource, such as a load balancer. If omitted, the `region` argument of the provider is used. Changing this creates a new floating IP (which may or may not have a different address).

func (FloatingIpOutput) SubnetId added in v3.9.0

func (o FloatingIpOutput) SubnetId() pulumi.StringOutput

The subnet ID of the floating IP pool. Specify this if the floating IP network has multiple subnets.

func (FloatingIpOutput) SubnetIds added in v3.9.0

A list of external subnet IDs to try over each to allocate a floating IP address. If a subnet ID in a list has exhausted floating IP pool, the next subnet ID will be tried. This argument is used only during the resource creation. Conflicts with a `subnetId` argument.

func (FloatingIpOutput) Tags added in v3.9.0

A set of string tags for the floating IP.

func (FloatingIpOutput) TenantId added in v3.9.0

func (o FloatingIpOutput) TenantId() pulumi.StringOutput

The target tenant ID in which to allocate the floating IP, if you specify this together with a port_id, make sure the target port belongs to the same tenant. Changing this creates a new floating IP (which may or may not have a different address)

func (FloatingIpOutput) ToFloatingIpOutput

func (o FloatingIpOutput) ToFloatingIpOutput() FloatingIpOutput

func (FloatingIpOutput) ToFloatingIpOutputWithContext

func (o FloatingIpOutput) ToFloatingIpOutputWithContext(ctx context.Context) FloatingIpOutput

func (FloatingIpOutput) ValueSpecs added in v3.9.0

func (o FloatingIpOutput) ValueSpecs() pulumi.MapOutput

Map of additional options.

type FloatingIpState

type FloatingIpState struct {
	// The actual/specific floating IP to obtain. By default,
	// non-admin users are not able to specify a floating IP, so you must either be
	// an admin user or have had a custom policy or role applied to your OpenStack
	// user or project.
	Address pulumi.StringPtrInput
	// The collection of tags assigned on the floating IP, which have
	// been explicitly and implicitly added.
	AllTags pulumi.StringArrayInput
	// Human-readable description for the floating IP.
	Description pulumi.StringPtrInput
	// The floating IP DNS domain. Available, when Neutron
	// DNS extension is enabled. The data in this attribute will be published in an
	// external DNS service when Neutron is configured to integrate with such a
	// service. Changing this creates a new floating IP.
	DnsDomain pulumi.StringPtrInput
	// The floating IP DNS name. Available, when Neutron DNS
	// extension is enabled. The data in this attribute will be published in an
	// external DNS service when Neutron is configured to integrate with such a
	// service. Changing this creates a new floating IP.
	DnsName pulumi.StringPtrInput
	// Fixed IP of the port to associate with this floating IP. Required if
	// the port has multiple fixed IPs.
	FixedIp pulumi.StringPtrInput
	// The name of the pool from which to obtain the floating
	// IP. Changing this creates a new floating IP.
	Pool pulumi.StringPtrInput
	// ID of an existing port with at least one IP address to
	// associate with this floating IP.
	PortId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a floating IP that can be used with
	// another networking resource, such as a load balancer. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// floating IP (which may or may not have a different address).
	Region pulumi.StringPtrInput
	// The subnet ID of the floating IP pool. Specify this if
	// the floating IP network has multiple subnets.
	SubnetId pulumi.StringPtrInput
	// A list of external subnet IDs to try over each to
	// allocate a floating IP address. If a subnet ID in a list has exhausted
	// floating IP pool, the next subnet ID will be tried. This argument is used only
	// during the resource creation. Conflicts with a `subnetId` argument.
	SubnetIds pulumi.StringArrayInput
	// A set of string tags for the floating IP.
	Tags pulumi.StringArrayInput
	// The target tenant ID in which to allocate the floating
	// IP, if you specify this together with a port_id, make sure the target port
	// belongs to the same tenant. Changing this creates a new floating IP (which
	// may or may not have a different address)
	TenantId pulumi.StringPtrInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

func (FloatingIpState) ElementType

func (FloatingIpState) ElementType() reflect.Type

type GetNetworkSegment added in v3.12.0

type GetNetworkSegment struct {
	NetworkType     string `pulumi:"networkType"`
	PhysicalNetwork string `pulumi:"physicalNetwork"`
	SegmentationId  int    `pulumi:"segmentationId"`
}

type GetNetworkSegmentArgs added in v3.12.0

type GetNetworkSegmentArgs struct {
	NetworkType     pulumi.StringInput `pulumi:"networkType"`
	PhysicalNetwork pulumi.StringInput `pulumi:"physicalNetwork"`
	SegmentationId  pulumi.IntInput    `pulumi:"segmentationId"`
}

func (GetNetworkSegmentArgs) ElementType added in v3.12.0

func (GetNetworkSegmentArgs) ElementType() reflect.Type

func (GetNetworkSegmentArgs) ToGetNetworkSegmentOutput added in v3.12.0

func (i GetNetworkSegmentArgs) ToGetNetworkSegmentOutput() GetNetworkSegmentOutput

func (GetNetworkSegmentArgs) ToGetNetworkSegmentOutputWithContext added in v3.12.0

func (i GetNetworkSegmentArgs) ToGetNetworkSegmentOutputWithContext(ctx context.Context) GetNetworkSegmentOutput

type GetNetworkSegmentArray added in v3.12.0

type GetNetworkSegmentArray []GetNetworkSegmentInput

func (GetNetworkSegmentArray) ElementType added in v3.12.0

func (GetNetworkSegmentArray) ElementType() reflect.Type

func (GetNetworkSegmentArray) ToGetNetworkSegmentArrayOutput added in v3.12.0

func (i GetNetworkSegmentArray) ToGetNetworkSegmentArrayOutput() GetNetworkSegmentArrayOutput

func (GetNetworkSegmentArray) ToGetNetworkSegmentArrayOutputWithContext added in v3.12.0

func (i GetNetworkSegmentArray) ToGetNetworkSegmentArrayOutputWithContext(ctx context.Context) GetNetworkSegmentArrayOutput

type GetNetworkSegmentArrayInput added in v3.12.0

type GetNetworkSegmentArrayInput interface {
	pulumi.Input

	ToGetNetworkSegmentArrayOutput() GetNetworkSegmentArrayOutput
	ToGetNetworkSegmentArrayOutputWithContext(context.Context) GetNetworkSegmentArrayOutput
}

GetNetworkSegmentArrayInput is an input type that accepts GetNetworkSegmentArray and GetNetworkSegmentArrayOutput values. You can construct a concrete instance of `GetNetworkSegmentArrayInput` via:

GetNetworkSegmentArray{ GetNetworkSegmentArgs{...} }

type GetNetworkSegmentArrayOutput added in v3.12.0

type GetNetworkSegmentArrayOutput struct{ *pulumi.OutputState }

func (GetNetworkSegmentArrayOutput) ElementType added in v3.12.0

func (GetNetworkSegmentArrayOutput) Index added in v3.12.0

func (GetNetworkSegmentArrayOutput) ToGetNetworkSegmentArrayOutput added in v3.12.0

func (o GetNetworkSegmentArrayOutput) ToGetNetworkSegmentArrayOutput() GetNetworkSegmentArrayOutput

func (GetNetworkSegmentArrayOutput) ToGetNetworkSegmentArrayOutputWithContext added in v3.12.0

func (o GetNetworkSegmentArrayOutput) ToGetNetworkSegmentArrayOutputWithContext(ctx context.Context) GetNetworkSegmentArrayOutput

type GetNetworkSegmentInput added in v3.12.0

type GetNetworkSegmentInput interface {
	pulumi.Input

	ToGetNetworkSegmentOutput() GetNetworkSegmentOutput
	ToGetNetworkSegmentOutputWithContext(context.Context) GetNetworkSegmentOutput
}

GetNetworkSegmentInput is an input type that accepts GetNetworkSegmentArgs and GetNetworkSegmentOutput values. You can construct a concrete instance of `GetNetworkSegmentInput` via:

GetNetworkSegmentArgs{...}

type GetNetworkSegmentOutput added in v3.12.0

type GetNetworkSegmentOutput struct{ *pulumi.OutputState }

func (GetNetworkSegmentOutput) ElementType added in v3.12.0

func (GetNetworkSegmentOutput) ElementType() reflect.Type

func (GetNetworkSegmentOutput) NetworkType added in v3.12.0

func (GetNetworkSegmentOutput) PhysicalNetwork added in v3.12.0

func (o GetNetworkSegmentOutput) PhysicalNetwork() pulumi.StringOutput

func (GetNetworkSegmentOutput) SegmentationId added in v3.12.0

func (o GetNetworkSegmentOutput) SegmentationId() pulumi.IntOutput

func (GetNetworkSegmentOutput) ToGetNetworkSegmentOutput added in v3.12.0

func (o GetNetworkSegmentOutput) ToGetNetworkSegmentOutput() GetNetworkSegmentOutput

func (GetNetworkSegmentOutput) ToGetNetworkSegmentOutputWithContext added in v3.12.0

func (o GetNetworkSegmentOutput) ToGetNetworkSegmentOutputWithContext(ctx context.Context) GetNetworkSegmentOutput

type GetPortAllowedAddressPair

type GetPortAllowedAddressPair struct {
	// The additional IP address.
	IpAddress string `pulumi:"ipAddress"`
	// The MAC address of the port.
	MacAddress string `pulumi:"macAddress"`
}

type GetPortAllowedAddressPairArgs

type GetPortAllowedAddressPairArgs struct {
	// The additional IP address.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// The MAC address of the port.
	MacAddress pulumi.StringInput `pulumi:"macAddress"`
}

func (GetPortAllowedAddressPairArgs) ElementType

func (GetPortAllowedAddressPairArgs) ToGetPortAllowedAddressPairOutput

func (i GetPortAllowedAddressPairArgs) ToGetPortAllowedAddressPairOutput() GetPortAllowedAddressPairOutput

func (GetPortAllowedAddressPairArgs) ToGetPortAllowedAddressPairOutputWithContext

func (i GetPortAllowedAddressPairArgs) ToGetPortAllowedAddressPairOutputWithContext(ctx context.Context) GetPortAllowedAddressPairOutput

type GetPortAllowedAddressPairArray

type GetPortAllowedAddressPairArray []GetPortAllowedAddressPairInput

func (GetPortAllowedAddressPairArray) ElementType

func (GetPortAllowedAddressPairArray) ToGetPortAllowedAddressPairArrayOutput

func (i GetPortAllowedAddressPairArray) ToGetPortAllowedAddressPairArrayOutput() GetPortAllowedAddressPairArrayOutput

func (GetPortAllowedAddressPairArray) ToGetPortAllowedAddressPairArrayOutputWithContext

func (i GetPortAllowedAddressPairArray) ToGetPortAllowedAddressPairArrayOutputWithContext(ctx context.Context) GetPortAllowedAddressPairArrayOutput

type GetPortAllowedAddressPairArrayInput

type GetPortAllowedAddressPairArrayInput interface {
	pulumi.Input

	ToGetPortAllowedAddressPairArrayOutput() GetPortAllowedAddressPairArrayOutput
	ToGetPortAllowedAddressPairArrayOutputWithContext(context.Context) GetPortAllowedAddressPairArrayOutput
}

GetPortAllowedAddressPairArrayInput is an input type that accepts GetPortAllowedAddressPairArray and GetPortAllowedAddressPairArrayOutput values. You can construct a concrete instance of `GetPortAllowedAddressPairArrayInput` via:

GetPortAllowedAddressPairArray{ GetPortAllowedAddressPairArgs{...} }

type GetPortAllowedAddressPairArrayOutput

type GetPortAllowedAddressPairArrayOutput struct{ *pulumi.OutputState }

func (GetPortAllowedAddressPairArrayOutput) ElementType

func (GetPortAllowedAddressPairArrayOutput) Index

func (GetPortAllowedAddressPairArrayOutput) ToGetPortAllowedAddressPairArrayOutput

func (o GetPortAllowedAddressPairArrayOutput) ToGetPortAllowedAddressPairArrayOutput() GetPortAllowedAddressPairArrayOutput

func (GetPortAllowedAddressPairArrayOutput) ToGetPortAllowedAddressPairArrayOutputWithContext

func (o GetPortAllowedAddressPairArrayOutput) ToGetPortAllowedAddressPairArrayOutputWithContext(ctx context.Context) GetPortAllowedAddressPairArrayOutput

type GetPortAllowedAddressPairInput

type GetPortAllowedAddressPairInput interface {
	pulumi.Input

	ToGetPortAllowedAddressPairOutput() GetPortAllowedAddressPairOutput
	ToGetPortAllowedAddressPairOutputWithContext(context.Context) GetPortAllowedAddressPairOutput
}

GetPortAllowedAddressPairInput is an input type that accepts GetPortAllowedAddressPairArgs and GetPortAllowedAddressPairOutput values. You can construct a concrete instance of `GetPortAllowedAddressPairInput` via:

GetPortAllowedAddressPairArgs{...}

type GetPortAllowedAddressPairOutput

type GetPortAllowedAddressPairOutput struct{ *pulumi.OutputState }

func (GetPortAllowedAddressPairOutput) ElementType

func (GetPortAllowedAddressPairOutput) IpAddress

The additional IP address.

func (GetPortAllowedAddressPairOutput) MacAddress

The MAC address of the port.

func (GetPortAllowedAddressPairOutput) ToGetPortAllowedAddressPairOutput

func (o GetPortAllowedAddressPairOutput) ToGetPortAllowedAddressPairOutput() GetPortAllowedAddressPairOutput

func (GetPortAllowedAddressPairOutput) ToGetPortAllowedAddressPairOutputWithContext

func (o GetPortAllowedAddressPairOutput) ToGetPortAllowedAddressPairOutputWithContext(ctx context.Context) GetPortAllowedAddressPairOutput

type GetPortBinding

type GetPortBinding struct {
	// The ID of the host, which has the allocatee port.
	HostId string `pulumi:"hostId"`
	// A JSON string containing the binding profile information.
	Profile string `pulumi:"profile"`
	// A map of JSON strings containing additional details for this
	// specific binding.
	VifDetails map[string]interface{} `pulumi:"vifDetails"`
	// The VNIC type of the port binding.
	VifType string `pulumi:"vifType"`
	// VNIC type for the port.
	VnicType string `pulumi:"vnicType"`
}

type GetPortBindingArgs

type GetPortBindingArgs struct {
	// The ID of the host, which has the allocatee port.
	HostId pulumi.StringInput `pulumi:"hostId"`
	// A JSON string containing the binding profile information.
	Profile pulumi.StringInput `pulumi:"profile"`
	// A map of JSON strings containing additional details for this
	// specific binding.
	VifDetails pulumi.MapInput `pulumi:"vifDetails"`
	// The VNIC type of the port binding.
	VifType pulumi.StringInput `pulumi:"vifType"`
	// VNIC type for the port.
	VnicType pulumi.StringInput `pulumi:"vnicType"`
}

func (GetPortBindingArgs) ElementType

func (GetPortBindingArgs) ElementType() reflect.Type

func (GetPortBindingArgs) ToGetPortBindingOutput

func (i GetPortBindingArgs) ToGetPortBindingOutput() GetPortBindingOutput

func (GetPortBindingArgs) ToGetPortBindingOutputWithContext

func (i GetPortBindingArgs) ToGetPortBindingOutputWithContext(ctx context.Context) GetPortBindingOutput

type GetPortBindingArray

type GetPortBindingArray []GetPortBindingInput

func (GetPortBindingArray) ElementType

func (GetPortBindingArray) ElementType() reflect.Type

func (GetPortBindingArray) ToGetPortBindingArrayOutput

func (i GetPortBindingArray) ToGetPortBindingArrayOutput() GetPortBindingArrayOutput

func (GetPortBindingArray) ToGetPortBindingArrayOutputWithContext

func (i GetPortBindingArray) ToGetPortBindingArrayOutputWithContext(ctx context.Context) GetPortBindingArrayOutput

type GetPortBindingArrayInput

type GetPortBindingArrayInput interface {
	pulumi.Input

	ToGetPortBindingArrayOutput() GetPortBindingArrayOutput
	ToGetPortBindingArrayOutputWithContext(context.Context) GetPortBindingArrayOutput
}

GetPortBindingArrayInput is an input type that accepts GetPortBindingArray and GetPortBindingArrayOutput values. You can construct a concrete instance of `GetPortBindingArrayInput` via:

GetPortBindingArray{ GetPortBindingArgs{...} }

type GetPortBindingArrayOutput

type GetPortBindingArrayOutput struct{ *pulumi.OutputState }

func (GetPortBindingArrayOutput) ElementType

func (GetPortBindingArrayOutput) ElementType() reflect.Type

func (GetPortBindingArrayOutput) Index

func (GetPortBindingArrayOutput) ToGetPortBindingArrayOutput

func (o GetPortBindingArrayOutput) ToGetPortBindingArrayOutput() GetPortBindingArrayOutput

func (GetPortBindingArrayOutput) ToGetPortBindingArrayOutputWithContext

func (o GetPortBindingArrayOutput) ToGetPortBindingArrayOutputWithContext(ctx context.Context) GetPortBindingArrayOutput

type GetPortBindingInput

type GetPortBindingInput interface {
	pulumi.Input

	ToGetPortBindingOutput() GetPortBindingOutput
	ToGetPortBindingOutputWithContext(context.Context) GetPortBindingOutput
}

GetPortBindingInput is an input type that accepts GetPortBindingArgs and GetPortBindingOutput values. You can construct a concrete instance of `GetPortBindingInput` via:

GetPortBindingArgs{...}

type GetPortBindingOutput

type GetPortBindingOutput struct{ *pulumi.OutputState }

func (GetPortBindingOutput) ElementType

func (GetPortBindingOutput) ElementType() reflect.Type

func (GetPortBindingOutput) HostId

The ID of the host, which has the allocatee port.

func (GetPortBindingOutput) Profile

A JSON string containing the binding profile information.

func (GetPortBindingOutput) ToGetPortBindingOutput

func (o GetPortBindingOutput) ToGetPortBindingOutput() GetPortBindingOutput

func (GetPortBindingOutput) ToGetPortBindingOutputWithContext

func (o GetPortBindingOutput) ToGetPortBindingOutputWithContext(ctx context.Context) GetPortBindingOutput

func (GetPortBindingOutput) VifDetails

func (o GetPortBindingOutput) VifDetails() pulumi.MapOutput

A map of JSON strings containing additional details for this specific binding.

func (GetPortBindingOutput) VifType

The VNIC type of the port binding.

func (GetPortBindingOutput) VnicType

VNIC type for the port.

type GetPortExtraDhcpOption

type GetPortExtraDhcpOption struct {
	// IP protocol version
	IpVersion int `pulumi:"ipVersion"`
	// The name of the port.
	Name string `pulumi:"name"`
	// Value of the DHCP option.
	Value string `pulumi:"value"`
}

type GetPortExtraDhcpOptionArgs

type GetPortExtraDhcpOptionArgs struct {
	// IP protocol version
	IpVersion pulumi.IntInput `pulumi:"ipVersion"`
	// The name of the port.
	Name pulumi.StringInput `pulumi:"name"`
	// Value of the DHCP option.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetPortExtraDhcpOptionArgs) ElementType

func (GetPortExtraDhcpOptionArgs) ElementType() reflect.Type

func (GetPortExtraDhcpOptionArgs) ToGetPortExtraDhcpOptionOutput

func (i GetPortExtraDhcpOptionArgs) ToGetPortExtraDhcpOptionOutput() GetPortExtraDhcpOptionOutput

func (GetPortExtraDhcpOptionArgs) ToGetPortExtraDhcpOptionOutputWithContext

func (i GetPortExtraDhcpOptionArgs) ToGetPortExtraDhcpOptionOutputWithContext(ctx context.Context) GetPortExtraDhcpOptionOutput

type GetPortExtraDhcpOptionArray

type GetPortExtraDhcpOptionArray []GetPortExtraDhcpOptionInput

func (GetPortExtraDhcpOptionArray) ElementType

func (GetPortExtraDhcpOptionArray) ToGetPortExtraDhcpOptionArrayOutput

func (i GetPortExtraDhcpOptionArray) ToGetPortExtraDhcpOptionArrayOutput() GetPortExtraDhcpOptionArrayOutput

func (GetPortExtraDhcpOptionArray) ToGetPortExtraDhcpOptionArrayOutputWithContext

func (i GetPortExtraDhcpOptionArray) ToGetPortExtraDhcpOptionArrayOutputWithContext(ctx context.Context) GetPortExtraDhcpOptionArrayOutput

type GetPortExtraDhcpOptionArrayInput

type GetPortExtraDhcpOptionArrayInput interface {
	pulumi.Input

	ToGetPortExtraDhcpOptionArrayOutput() GetPortExtraDhcpOptionArrayOutput
	ToGetPortExtraDhcpOptionArrayOutputWithContext(context.Context) GetPortExtraDhcpOptionArrayOutput
}

GetPortExtraDhcpOptionArrayInput is an input type that accepts GetPortExtraDhcpOptionArray and GetPortExtraDhcpOptionArrayOutput values. You can construct a concrete instance of `GetPortExtraDhcpOptionArrayInput` via:

GetPortExtraDhcpOptionArray{ GetPortExtraDhcpOptionArgs{...} }

type GetPortExtraDhcpOptionArrayOutput

type GetPortExtraDhcpOptionArrayOutput struct{ *pulumi.OutputState }

func (GetPortExtraDhcpOptionArrayOutput) ElementType

func (GetPortExtraDhcpOptionArrayOutput) Index

func (GetPortExtraDhcpOptionArrayOutput) ToGetPortExtraDhcpOptionArrayOutput

func (o GetPortExtraDhcpOptionArrayOutput) ToGetPortExtraDhcpOptionArrayOutput() GetPortExtraDhcpOptionArrayOutput

func (GetPortExtraDhcpOptionArrayOutput) ToGetPortExtraDhcpOptionArrayOutputWithContext

func (o GetPortExtraDhcpOptionArrayOutput) ToGetPortExtraDhcpOptionArrayOutputWithContext(ctx context.Context) GetPortExtraDhcpOptionArrayOutput

type GetPortExtraDhcpOptionInput

type GetPortExtraDhcpOptionInput interface {
	pulumi.Input

	ToGetPortExtraDhcpOptionOutput() GetPortExtraDhcpOptionOutput
	ToGetPortExtraDhcpOptionOutputWithContext(context.Context) GetPortExtraDhcpOptionOutput
}

GetPortExtraDhcpOptionInput is an input type that accepts GetPortExtraDhcpOptionArgs and GetPortExtraDhcpOptionOutput values. You can construct a concrete instance of `GetPortExtraDhcpOptionInput` via:

GetPortExtraDhcpOptionArgs{...}

type GetPortExtraDhcpOptionOutput

type GetPortExtraDhcpOptionOutput struct{ *pulumi.OutputState }

func (GetPortExtraDhcpOptionOutput) ElementType

func (GetPortExtraDhcpOptionOutput) IpVersion

IP protocol version

func (GetPortExtraDhcpOptionOutput) Name

The name of the port.

func (GetPortExtraDhcpOptionOutput) ToGetPortExtraDhcpOptionOutput

func (o GetPortExtraDhcpOptionOutput) ToGetPortExtraDhcpOptionOutput() GetPortExtraDhcpOptionOutput

func (GetPortExtraDhcpOptionOutput) ToGetPortExtraDhcpOptionOutputWithContext

func (o GetPortExtraDhcpOptionOutput) ToGetPortExtraDhcpOptionOutputWithContext(ctx context.Context) GetPortExtraDhcpOptionOutput

func (GetPortExtraDhcpOptionOutput) Value

Value of the DHCP option.

type GetPortIdsArgs

type GetPortIdsArgs struct {
	// The administrative state of the port.
	AdminStateUp *bool `pulumi:"adminStateUp"`
	// Human-readable description of the port.
	Description *string `pulumi:"description"`
	// The ID of the device the port belongs to.
	DeviceId *string `pulumi:"deviceId"`
	// The device owner of the port.
	DeviceOwner *string `pulumi:"deviceOwner"`
	DnsName     *string `pulumi:"dnsName"`
	// The port IP address filter.
	FixedIp *string `pulumi:"fixedIp"`
	// The MAC address of the port.
	MacAddress *string `pulumi:"macAddress"`
	// The name of the port.
	Name *string `pulumi:"name"`
	// The ID of the network the port belongs to.
	NetworkId *string `pulumi:"networkId"`
	// The owner of the port.
	ProjectId *string `pulumi:"projectId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve port ids. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// The list of port security group IDs to filter.
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	// Order the results in either `asc` or `desc`.
	// Defaults to none.
	SortDirection *string `pulumi:"sortDirection"`
	// Sort ports based on a certain key. Defaults to none.
	SortKey *string `pulumi:"sortKey"`
	// The status of the port.
	Status *string `pulumi:"status"`
	// The list of port tags to filter.
	Tags     []string `pulumi:"tags"`
	TenantId *string  `pulumi:"tenantId"`
}

A collection of arguments for invoking getPortIds.

type GetPortIdsOutputArgs added in v3.5.0

type GetPortIdsOutputArgs struct {
	// The administrative state of the port.
	AdminStateUp pulumi.BoolPtrInput `pulumi:"adminStateUp"`
	// Human-readable description of the port.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The ID of the device the port belongs to.
	DeviceId pulumi.StringPtrInput `pulumi:"deviceId"`
	// The device owner of the port.
	DeviceOwner pulumi.StringPtrInput `pulumi:"deviceOwner"`
	DnsName     pulumi.StringPtrInput `pulumi:"dnsName"`
	// The port IP address filter.
	FixedIp pulumi.StringPtrInput `pulumi:"fixedIp"`
	// The MAC address of the port.
	MacAddress pulumi.StringPtrInput `pulumi:"macAddress"`
	// The name of the port.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The ID of the network the port belongs to.
	NetworkId pulumi.StringPtrInput `pulumi:"networkId"`
	// The owner of the port.
	ProjectId pulumi.StringPtrInput `pulumi:"projectId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve port ids. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// The list of port security group IDs to filter.
	SecurityGroupIds pulumi.StringArrayInput `pulumi:"securityGroupIds"`
	// Order the results in either `asc` or `desc`.
	// Defaults to none.
	SortDirection pulumi.StringPtrInput `pulumi:"sortDirection"`
	// Sort ports based on a certain key. Defaults to none.
	SortKey pulumi.StringPtrInput `pulumi:"sortKey"`
	// The status of the port.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// The list of port tags to filter.
	Tags     pulumi.StringArrayInput `pulumi:"tags"`
	TenantId pulumi.StringPtrInput   `pulumi:"tenantId"`
}

A collection of arguments for invoking getPortIds.

func (GetPortIdsOutputArgs) ElementType added in v3.5.0

func (GetPortIdsOutputArgs) ElementType() reflect.Type

type GetPortIdsResult

type GetPortIdsResult struct {
	AdminStateUp *bool   `pulumi:"adminStateUp"`
	Description  *string `pulumi:"description"`
	DeviceId     *string `pulumi:"deviceId"`
	DeviceOwner  *string `pulumi:"deviceOwner"`
	DnsName      *string `pulumi:"dnsName"`
	FixedIp      *string `pulumi:"fixedIp"`
	// The provider-assigned unique ID for this managed resource.
	Id               string   `pulumi:"id"`
	Ids              []string `pulumi:"ids"`
	MacAddress       *string  `pulumi:"macAddress"`
	Name             *string  `pulumi:"name"`
	NetworkId        *string  `pulumi:"networkId"`
	ProjectId        *string  `pulumi:"projectId"`
	Region           *string  `pulumi:"region"`
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	SortDirection    *string  `pulumi:"sortDirection"`
	SortKey          *string  `pulumi:"sortKey"`
	Status           *string  `pulumi:"status"`
	Tags             []string `pulumi:"tags"`
	TenantId         *string  `pulumi:"tenantId"`
}

A collection of values returned by getPortIds.

func GetPortIds

func GetPortIds(ctx *pulumi.Context, args *GetPortIdsArgs, opts ...pulumi.InvokeOption) (*GetPortIdsResult, error)

Use this data source to get a list of Openstack Port IDs matching the specified criteria.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.GetPortIds(ctx, &networking.GetPortIdsArgs{
			Name: pulumi.StringRef("port"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type GetPortIdsResultOutput added in v3.5.0

type GetPortIdsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getPortIds.

func GetPortIdsOutput added in v3.5.0

func GetPortIdsOutput(ctx *pulumi.Context, args GetPortIdsOutputArgs, opts ...pulumi.InvokeOption) GetPortIdsResultOutput

func (GetPortIdsResultOutput) AdminStateUp added in v3.5.0

func (o GetPortIdsResultOutput) AdminStateUp() pulumi.BoolPtrOutput

func (GetPortIdsResultOutput) Description added in v3.5.0

func (GetPortIdsResultOutput) DeviceId added in v3.5.0

func (GetPortIdsResultOutput) DeviceOwner added in v3.5.0

func (GetPortIdsResultOutput) DnsName added in v3.5.0

func (GetPortIdsResultOutput) ElementType added in v3.5.0

func (GetPortIdsResultOutput) ElementType() reflect.Type

func (GetPortIdsResultOutput) FixedIp added in v3.5.0

func (GetPortIdsResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (GetPortIdsResultOutput) Ids added in v3.5.0

func (GetPortIdsResultOutput) MacAddress added in v3.5.0

func (GetPortIdsResultOutput) Name added in v3.5.0

func (GetPortIdsResultOutput) NetworkId added in v3.5.0

func (GetPortIdsResultOutput) ProjectId added in v3.5.0

func (GetPortIdsResultOutput) Region added in v3.5.0

func (GetPortIdsResultOutput) SecurityGroupIds added in v3.5.0

func (o GetPortIdsResultOutput) SecurityGroupIds() pulumi.StringArrayOutput

func (GetPortIdsResultOutput) SortDirection added in v3.5.0

func (o GetPortIdsResultOutput) SortDirection() pulumi.StringPtrOutput

func (GetPortIdsResultOutput) SortKey added in v3.5.0

func (GetPortIdsResultOutput) Status added in v3.5.0

func (GetPortIdsResultOutput) Tags added in v3.5.0

func (GetPortIdsResultOutput) TenantId added in v3.5.0

func (GetPortIdsResultOutput) ToGetPortIdsResultOutput added in v3.5.0

func (o GetPortIdsResultOutput) ToGetPortIdsResultOutput() GetPortIdsResultOutput

func (GetPortIdsResultOutput) ToGetPortIdsResultOutputWithContext added in v3.5.0

func (o GetPortIdsResultOutput) ToGetPortIdsResultOutputWithContext(ctx context.Context) GetPortIdsResultOutput

type GetRouterExternalFixedIp

type GetRouterExternalFixedIp struct {
	// The IP address to set on the router.
	IpAddress *string `pulumi:"ipAddress"`
	// Subnet in which the fixed IP belongs to.
	SubnetId *string `pulumi:"subnetId"`
}

type GetRouterExternalFixedIpArgs

type GetRouterExternalFixedIpArgs struct {
	// The IP address to set on the router.
	IpAddress pulumi.StringPtrInput `pulumi:"ipAddress"`
	// Subnet in which the fixed IP belongs to.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
}

func (GetRouterExternalFixedIpArgs) ElementType

func (GetRouterExternalFixedIpArgs) ToGetRouterExternalFixedIpOutput

func (i GetRouterExternalFixedIpArgs) ToGetRouterExternalFixedIpOutput() GetRouterExternalFixedIpOutput

func (GetRouterExternalFixedIpArgs) ToGetRouterExternalFixedIpOutputWithContext

func (i GetRouterExternalFixedIpArgs) ToGetRouterExternalFixedIpOutputWithContext(ctx context.Context) GetRouterExternalFixedIpOutput

type GetRouterExternalFixedIpArray

type GetRouterExternalFixedIpArray []GetRouterExternalFixedIpInput

func (GetRouterExternalFixedIpArray) ElementType

func (GetRouterExternalFixedIpArray) ToGetRouterExternalFixedIpArrayOutput

func (i GetRouterExternalFixedIpArray) ToGetRouterExternalFixedIpArrayOutput() GetRouterExternalFixedIpArrayOutput

func (GetRouterExternalFixedIpArray) ToGetRouterExternalFixedIpArrayOutputWithContext

func (i GetRouterExternalFixedIpArray) ToGetRouterExternalFixedIpArrayOutputWithContext(ctx context.Context) GetRouterExternalFixedIpArrayOutput

type GetRouterExternalFixedIpArrayInput

type GetRouterExternalFixedIpArrayInput interface {
	pulumi.Input

	ToGetRouterExternalFixedIpArrayOutput() GetRouterExternalFixedIpArrayOutput
	ToGetRouterExternalFixedIpArrayOutputWithContext(context.Context) GetRouterExternalFixedIpArrayOutput
}

GetRouterExternalFixedIpArrayInput is an input type that accepts GetRouterExternalFixedIpArray and GetRouterExternalFixedIpArrayOutput values. You can construct a concrete instance of `GetRouterExternalFixedIpArrayInput` via:

GetRouterExternalFixedIpArray{ GetRouterExternalFixedIpArgs{...} }

type GetRouterExternalFixedIpArrayOutput

type GetRouterExternalFixedIpArrayOutput struct{ *pulumi.OutputState }

func (GetRouterExternalFixedIpArrayOutput) ElementType

func (GetRouterExternalFixedIpArrayOutput) Index

func (GetRouterExternalFixedIpArrayOutput) ToGetRouterExternalFixedIpArrayOutput

func (o GetRouterExternalFixedIpArrayOutput) ToGetRouterExternalFixedIpArrayOutput() GetRouterExternalFixedIpArrayOutput

func (GetRouterExternalFixedIpArrayOutput) ToGetRouterExternalFixedIpArrayOutputWithContext

func (o GetRouterExternalFixedIpArrayOutput) ToGetRouterExternalFixedIpArrayOutputWithContext(ctx context.Context) GetRouterExternalFixedIpArrayOutput

type GetRouterExternalFixedIpInput

type GetRouterExternalFixedIpInput interface {
	pulumi.Input

	ToGetRouterExternalFixedIpOutput() GetRouterExternalFixedIpOutput
	ToGetRouterExternalFixedIpOutputWithContext(context.Context) GetRouterExternalFixedIpOutput
}

GetRouterExternalFixedIpInput is an input type that accepts GetRouterExternalFixedIpArgs and GetRouterExternalFixedIpOutput values. You can construct a concrete instance of `GetRouterExternalFixedIpInput` via:

GetRouterExternalFixedIpArgs{...}

type GetRouterExternalFixedIpOutput

type GetRouterExternalFixedIpOutput struct{ *pulumi.OutputState }

func (GetRouterExternalFixedIpOutput) ElementType

func (GetRouterExternalFixedIpOutput) IpAddress

The IP address to set on the router.

func (GetRouterExternalFixedIpOutput) SubnetId

Subnet in which the fixed IP belongs to.

func (GetRouterExternalFixedIpOutput) ToGetRouterExternalFixedIpOutput

func (o GetRouterExternalFixedIpOutput) ToGetRouterExternalFixedIpOutput() GetRouterExternalFixedIpOutput

func (GetRouterExternalFixedIpOutput) ToGetRouterExternalFixedIpOutputWithContext

func (o GetRouterExternalFixedIpOutput) ToGetRouterExternalFixedIpOutputWithContext(ctx context.Context) GetRouterExternalFixedIpOutput

type GetSubnetAllocationPool

type GetSubnetAllocationPool struct {
	End   string `pulumi:"end"`
	Start string `pulumi:"start"`
}

type GetSubnetAllocationPoolArgs

type GetSubnetAllocationPoolArgs struct {
	End   pulumi.StringInput `pulumi:"end"`
	Start pulumi.StringInput `pulumi:"start"`
}

func (GetSubnetAllocationPoolArgs) ElementType

func (GetSubnetAllocationPoolArgs) ToGetSubnetAllocationPoolOutput

func (i GetSubnetAllocationPoolArgs) ToGetSubnetAllocationPoolOutput() GetSubnetAllocationPoolOutput

func (GetSubnetAllocationPoolArgs) ToGetSubnetAllocationPoolOutputWithContext

func (i GetSubnetAllocationPoolArgs) ToGetSubnetAllocationPoolOutputWithContext(ctx context.Context) GetSubnetAllocationPoolOutput

type GetSubnetAllocationPoolArray

type GetSubnetAllocationPoolArray []GetSubnetAllocationPoolInput

func (GetSubnetAllocationPoolArray) ElementType

func (GetSubnetAllocationPoolArray) ToGetSubnetAllocationPoolArrayOutput

func (i GetSubnetAllocationPoolArray) ToGetSubnetAllocationPoolArrayOutput() GetSubnetAllocationPoolArrayOutput

func (GetSubnetAllocationPoolArray) ToGetSubnetAllocationPoolArrayOutputWithContext

func (i GetSubnetAllocationPoolArray) ToGetSubnetAllocationPoolArrayOutputWithContext(ctx context.Context) GetSubnetAllocationPoolArrayOutput

type GetSubnetAllocationPoolArrayInput

type GetSubnetAllocationPoolArrayInput interface {
	pulumi.Input

	ToGetSubnetAllocationPoolArrayOutput() GetSubnetAllocationPoolArrayOutput
	ToGetSubnetAllocationPoolArrayOutputWithContext(context.Context) GetSubnetAllocationPoolArrayOutput
}

GetSubnetAllocationPoolArrayInput is an input type that accepts GetSubnetAllocationPoolArray and GetSubnetAllocationPoolArrayOutput values. You can construct a concrete instance of `GetSubnetAllocationPoolArrayInput` via:

GetSubnetAllocationPoolArray{ GetSubnetAllocationPoolArgs{...} }

type GetSubnetAllocationPoolArrayOutput

type GetSubnetAllocationPoolArrayOutput struct{ *pulumi.OutputState }

func (GetSubnetAllocationPoolArrayOutput) ElementType

func (GetSubnetAllocationPoolArrayOutput) Index

func (GetSubnetAllocationPoolArrayOutput) ToGetSubnetAllocationPoolArrayOutput

func (o GetSubnetAllocationPoolArrayOutput) ToGetSubnetAllocationPoolArrayOutput() GetSubnetAllocationPoolArrayOutput

func (GetSubnetAllocationPoolArrayOutput) ToGetSubnetAllocationPoolArrayOutputWithContext

func (o GetSubnetAllocationPoolArrayOutput) ToGetSubnetAllocationPoolArrayOutputWithContext(ctx context.Context) GetSubnetAllocationPoolArrayOutput

type GetSubnetAllocationPoolInput

type GetSubnetAllocationPoolInput interface {
	pulumi.Input

	ToGetSubnetAllocationPoolOutput() GetSubnetAllocationPoolOutput
	ToGetSubnetAllocationPoolOutputWithContext(context.Context) GetSubnetAllocationPoolOutput
}

GetSubnetAllocationPoolInput is an input type that accepts GetSubnetAllocationPoolArgs and GetSubnetAllocationPoolOutput values. You can construct a concrete instance of `GetSubnetAllocationPoolInput` via:

GetSubnetAllocationPoolArgs{...}

type GetSubnetAllocationPoolOutput

type GetSubnetAllocationPoolOutput struct{ *pulumi.OutputState }

func (GetSubnetAllocationPoolOutput) ElementType

func (GetSubnetAllocationPoolOutput) End

func (GetSubnetAllocationPoolOutput) Start

func (GetSubnetAllocationPoolOutput) ToGetSubnetAllocationPoolOutput

func (o GetSubnetAllocationPoolOutput) ToGetSubnetAllocationPoolOutput() GetSubnetAllocationPoolOutput

func (GetSubnetAllocationPoolOutput) ToGetSubnetAllocationPoolOutputWithContext

func (o GetSubnetAllocationPoolOutput) ToGetSubnetAllocationPoolOutputWithContext(ctx context.Context) GetSubnetAllocationPoolOutput

type GetSubnetHostRoute

type GetSubnetHostRoute struct {
	DestinationCidr string `pulumi:"destinationCidr"`
	NextHop         string `pulumi:"nextHop"`
}

type GetSubnetHostRouteArgs

type GetSubnetHostRouteArgs struct {
	DestinationCidr pulumi.StringInput `pulumi:"destinationCidr"`
	NextHop         pulumi.StringInput `pulumi:"nextHop"`
}

func (GetSubnetHostRouteArgs) ElementType

func (GetSubnetHostRouteArgs) ElementType() reflect.Type

func (GetSubnetHostRouteArgs) ToGetSubnetHostRouteOutput

func (i GetSubnetHostRouteArgs) ToGetSubnetHostRouteOutput() GetSubnetHostRouteOutput

func (GetSubnetHostRouteArgs) ToGetSubnetHostRouteOutputWithContext

func (i GetSubnetHostRouteArgs) ToGetSubnetHostRouteOutputWithContext(ctx context.Context) GetSubnetHostRouteOutput

type GetSubnetHostRouteArray

type GetSubnetHostRouteArray []GetSubnetHostRouteInput

func (GetSubnetHostRouteArray) ElementType

func (GetSubnetHostRouteArray) ElementType() reflect.Type

func (GetSubnetHostRouteArray) ToGetSubnetHostRouteArrayOutput

func (i GetSubnetHostRouteArray) ToGetSubnetHostRouteArrayOutput() GetSubnetHostRouteArrayOutput

func (GetSubnetHostRouteArray) ToGetSubnetHostRouteArrayOutputWithContext

func (i GetSubnetHostRouteArray) ToGetSubnetHostRouteArrayOutputWithContext(ctx context.Context) GetSubnetHostRouteArrayOutput

type GetSubnetHostRouteArrayInput

type GetSubnetHostRouteArrayInput interface {
	pulumi.Input

	ToGetSubnetHostRouteArrayOutput() GetSubnetHostRouteArrayOutput
	ToGetSubnetHostRouteArrayOutputWithContext(context.Context) GetSubnetHostRouteArrayOutput
}

GetSubnetHostRouteArrayInput is an input type that accepts GetSubnetHostRouteArray and GetSubnetHostRouteArrayOutput values. You can construct a concrete instance of `GetSubnetHostRouteArrayInput` via:

GetSubnetHostRouteArray{ GetSubnetHostRouteArgs{...} }

type GetSubnetHostRouteArrayOutput

type GetSubnetHostRouteArrayOutput struct{ *pulumi.OutputState }

func (GetSubnetHostRouteArrayOutput) ElementType

func (GetSubnetHostRouteArrayOutput) Index

func (GetSubnetHostRouteArrayOutput) ToGetSubnetHostRouteArrayOutput

func (o GetSubnetHostRouteArrayOutput) ToGetSubnetHostRouteArrayOutput() GetSubnetHostRouteArrayOutput

func (GetSubnetHostRouteArrayOutput) ToGetSubnetHostRouteArrayOutputWithContext

func (o GetSubnetHostRouteArrayOutput) ToGetSubnetHostRouteArrayOutputWithContext(ctx context.Context) GetSubnetHostRouteArrayOutput

type GetSubnetHostRouteInput

type GetSubnetHostRouteInput interface {
	pulumi.Input

	ToGetSubnetHostRouteOutput() GetSubnetHostRouteOutput
	ToGetSubnetHostRouteOutputWithContext(context.Context) GetSubnetHostRouteOutput
}

GetSubnetHostRouteInput is an input type that accepts GetSubnetHostRouteArgs and GetSubnetHostRouteOutput values. You can construct a concrete instance of `GetSubnetHostRouteInput` via:

GetSubnetHostRouteArgs{...}

type GetSubnetHostRouteOutput

type GetSubnetHostRouteOutput struct{ *pulumi.OutputState }

func (GetSubnetHostRouteOutput) DestinationCidr

func (o GetSubnetHostRouteOutput) DestinationCidr() pulumi.StringOutput

func (GetSubnetHostRouteOutput) ElementType

func (GetSubnetHostRouteOutput) ElementType() reflect.Type

func (GetSubnetHostRouteOutput) NextHop

func (GetSubnetHostRouteOutput) ToGetSubnetHostRouteOutput

func (o GetSubnetHostRouteOutput) ToGetSubnetHostRouteOutput() GetSubnetHostRouteOutput

func (GetSubnetHostRouteOutput) ToGetSubnetHostRouteOutputWithContext

func (o GetSubnetHostRouteOutput) ToGetSubnetHostRouteOutputWithContext(ctx context.Context) GetSubnetHostRouteOutput

type GetSubnetIdsV2Args

type GetSubnetIdsV2Args struct {
	// The CIDR of the subnet.
	Cidr *string `pulumi:"cidr"`
	// Human-readable description of the subnet.
	Description *string `pulumi:"description"`
	// If the subnet has DHCP enabled.
	DhcpEnabled *bool `pulumi:"dhcpEnabled"`
	// The IP of the subnet's gateway.
	GatewayIp *string `pulumi:"gatewayIp"`
	// The IP version of the subnet (either 4 or 6).
	IpVersion *int `pulumi:"ipVersion"`
	// The IPv6 address mode. Valid values are
	// `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6AddressMode *string `pulumi:"ipv6AddressMode"`
	// The IPv6 Router Advertisement mode. Valid values
	// are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6RaMode *string `pulumi:"ipv6RaMode"`
	// The name of the subnet.
	Name      *string `pulumi:"name"`
	NameRegex *string `pulumi:"nameRegex"`
	// The ID of the network the subnet belongs to.
	NetworkId *string `pulumi:"networkId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve subnet ids. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// Order the results in either `asc` or `desc`.
	// Defaults to none.
	SortDirection *string `pulumi:"sortDirection"`
	// Sort subnets based on a certain key. Defaults to none.
	SortKey *string `pulumi:"sortKey"`
	// The ID of the subnetpool associated with the subnet.
	SubnetpoolId *string `pulumi:"subnetpoolId"`
	// The list of subnet tags to filter.
	Tags []string `pulumi:"tags"`
	// The owner of the subnet.
	TenantId *string `pulumi:"tenantId"`
}

A collection of arguments for invoking getSubnetIdsV2.

type GetSubnetIdsV2OutputArgs added in v3.5.0

type GetSubnetIdsV2OutputArgs struct {
	// The CIDR of the subnet.
	Cidr pulumi.StringPtrInput `pulumi:"cidr"`
	// Human-readable description of the subnet.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// If the subnet has DHCP enabled.
	DhcpEnabled pulumi.BoolPtrInput `pulumi:"dhcpEnabled"`
	// The IP of the subnet's gateway.
	GatewayIp pulumi.StringPtrInput `pulumi:"gatewayIp"`
	// The IP version of the subnet (either 4 or 6).
	IpVersion pulumi.IntPtrInput `pulumi:"ipVersion"`
	// The IPv6 address mode. Valid values are
	// `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6AddressMode pulumi.StringPtrInput `pulumi:"ipv6AddressMode"`
	// The IPv6 Router Advertisement mode. Valid values
	// are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6RaMode pulumi.StringPtrInput `pulumi:"ipv6RaMode"`
	// The name of the subnet.
	Name      pulumi.StringPtrInput `pulumi:"name"`
	NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"`
	// The ID of the network the subnet belongs to.
	NetworkId pulumi.StringPtrInput `pulumi:"networkId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve subnet ids. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// Order the results in either `asc` or `desc`.
	// Defaults to none.
	SortDirection pulumi.StringPtrInput `pulumi:"sortDirection"`
	// Sort subnets based on a certain key. Defaults to none.
	SortKey pulumi.StringPtrInput `pulumi:"sortKey"`
	// The ID of the subnetpool associated with the subnet.
	SubnetpoolId pulumi.StringPtrInput `pulumi:"subnetpoolId"`
	// The list of subnet tags to filter.
	Tags pulumi.StringArrayInput `pulumi:"tags"`
	// The owner of the subnet.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
}

A collection of arguments for invoking getSubnetIdsV2.

func (GetSubnetIdsV2OutputArgs) ElementType added in v3.5.0

func (GetSubnetIdsV2OutputArgs) ElementType() reflect.Type

type GetSubnetIdsV2Result

type GetSubnetIdsV2Result struct {
	Cidr        *string `pulumi:"cidr"`
	Description *string `pulumi:"description"`
	DhcpEnabled *bool   `pulumi:"dhcpEnabled"`
	GatewayIp   *string `pulumi:"gatewayIp"`
	// The provider-assigned unique ID for this managed resource.
	Id              string   `pulumi:"id"`
	Ids             []string `pulumi:"ids"`
	IpVersion       *int     `pulumi:"ipVersion"`
	Ipv6AddressMode *string  `pulumi:"ipv6AddressMode"`
	Ipv6RaMode      string   `pulumi:"ipv6RaMode"`
	Name            *string  `pulumi:"name"`
	NameRegex       *string  `pulumi:"nameRegex"`
	NetworkId       *string  `pulumi:"networkId"`
	Region          string   `pulumi:"region"`
	SortDirection   *string  `pulumi:"sortDirection"`
	SortKey         *string  `pulumi:"sortKey"`
	SubnetpoolId    *string  `pulumi:"subnetpoolId"`
	Tags            []string `pulumi:"tags"`
	TenantId        *string  `pulumi:"tenantId"`
}

A collection of values returned by getSubnetIdsV2.

func GetSubnetIdsV2

func GetSubnetIdsV2(ctx *pulumi.Context, args *GetSubnetIdsV2Args, opts ...pulumi.InvokeOption) (*GetSubnetIdsV2Result, error)

Use this data source to get a list of Openstack Subnet IDs matching the specified criteria.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.GetSubnetIdsV2(ctx, &networking.GetSubnetIdsV2Args{
			NameRegex: pulumi.StringRef("public"),
			Tags: []string{
				"public",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type GetSubnetIdsV2ResultOutput added in v3.5.0

type GetSubnetIdsV2ResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSubnetIdsV2.

func GetSubnetIdsV2Output added in v3.5.0

func GetSubnetIdsV2Output(ctx *pulumi.Context, args GetSubnetIdsV2OutputArgs, opts ...pulumi.InvokeOption) GetSubnetIdsV2ResultOutput

func (GetSubnetIdsV2ResultOutput) Cidr added in v3.5.0

func (GetSubnetIdsV2ResultOutput) Description added in v3.5.0

func (GetSubnetIdsV2ResultOutput) DhcpEnabled added in v3.5.0

func (GetSubnetIdsV2ResultOutput) ElementType added in v3.5.0

func (GetSubnetIdsV2ResultOutput) ElementType() reflect.Type

func (GetSubnetIdsV2ResultOutput) GatewayIp added in v3.5.0

func (GetSubnetIdsV2ResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (GetSubnetIdsV2ResultOutput) Ids added in v3.5.0

func (GetSubnetIdsV2ResultOutput) IpVersion added in v3.5.0

func (GetSubnetIdsV2ResultOutput) Ipv6AddressMode added in v3.5.0

func (GetSubnetIdsV2ResultOutput) Ipv6RaMode added in v3.5.0

func (GetSubnetIdsV2ResultOutput) Name added in v3.5.0

func (GetSubnetIdsV2ResultOutput) NameRegex added in v3.5.0

func (GetSubnetIdsV2ResultOutput) NetworkId added in v3.5.0

func (GetSubnetIdsV2ResultOutput) Region added in v3.5.0

func (GetSubnetIdsV2ResultOutput) SortDirection added in v3.5.0

func (GetSubnetIdsV2ResultOutput) SortKey added in v3.5.0

func (GetSubnetIdsV2ResultOutput) SubnetpoolId added in v3.5.0

func (GetSubnetIdsV2ResultOutput) Tags added in v3.5.0

func (GetSubnetIdsV2ResultOutput) TenantId added in v3.5.0

func (GetSubnetIdsV2ResultOutput) ToGetSubnetIdsV2ResultOutput added in v3.5.0

func (o GetSubnetIdsV2ResultOutput) ToGetSubnetIdsV2ResultOutput() GetSubnetIdsV2ResultOutput

func (GetSubnetIdsV2ResultOutput) ToGetSubnetIdsV2ResultOutputWithContext added in v3.5.0

func (o GetSubnetIdsV2ResultOutput) ToGetSubnetIdsV2ResultOutputWithContext(ctx context.Context) GetSubnetIdsV2ResultOutput

type GetTrunkSubPort

type GetTrunkSubPort struct {
	// The ID of the trunk parent port.
	PortId string `pulumi:"portId"`
	// The numeric id of the subport segment.
	SegmentationId int `pulumi:"segmentationId"`
	// The segmenation tecnology used, e.g., "vlan".
	SegmentationType string `pulumi:"segmentationType"`
}

type GetTrunkSubPortArgs

type GetTrunkSubPortArgs struct {
	// The ID of the trunk parent port.
	PortId pulumi.StringInput `pulumi:"portId"`
	// The numeric id of the subport segment.
	SegmentationId pulumi.IntInput `pulumi:"segmentationId"`
	// The segmenation tecnology used, e.g., "vlan".
	SegmentationType pulumi.StringInput `pulumi:"segmentationType"`
}

func (GetTrunkSubPortArgs) ElementType

func (GetTrunkSubPortArgs) ElementType() reflect.Type

func (GetTrunkSubPortArgs) ToGetTrunkSubPortOutput

func (i GetTrunkSubPortArgs) ToGetTrunkSubPortOutput() GetTrunkSubPortOutput

func (GetTrunkSubPortArgs) ToGetTrunkSubPortOutputWithContext

func (i GetTrunkSubPortArgs) ToGetTrunkSubPortOutputWithContext(ctx context.Context) GetTrunkSubPortOutput

type GetTrunkSubPortArray

type GetTrunkSubPortArray []GetTrunkSubPortInput

func (GetTrunkSubPortArray) ElementType

func (GetTrunkSubPortArray) ElementType() reflect.Type

func (GetTrunkSubPortArray) ToGetTrunkSubPortArrayOutput

func (i GetTrunkSubPortArray) ToGetTrunkSubPortArrayOutput() GetTrunkSubPortArrayOutput

func (GetTrunkSubPortArray) ToGetTrunkSubPortArrayOutputWithContext

func (i GetTrunkSubPortArray) ToGetTrunkSubPortArrayOutputWithContext(ctx context.Context) GetTrunkSubPortArrayOutput

type GetTrunkSubPortArrayInput

type GetTrunkSubPortArrayInput interface {
	pulumi.Input

	ToGetTrunkSubPortArrayOutput() GetTrunkSubPortArrayOutput
	ToGetTrunkSubPortArrayOutputWithContext(context.Context) GetTrunkSubPortArrayOutput
}

GetTrunkSubPortArrayInput is an input type that accepts GetTrunkSubPortArray and GetTrunkSubPortArrayOutput values. You can construct a concrete instance of `GetTrunkSubPortArrayInput` via:

GetTrunkSubPortArray{ GetTrunkSubPortArgs{...} }

type GetTrunkSubPortArrayOutput

type GetTrunkSubPortArrayOutput struct{ *pulumi.OutputState }

func (GetTrunkSubPortArrayOutput) ElementType

func (GetTrunkSubPortArrayOutput) ElementType() reflect.Type

func (GetTrunkSubPortArrayOutput) Index

func (GetTrunkSubPortArrayOutput) ToGetTrunkSubPortArrayOutput

func (o GetTrunkSubPortArrayOutput) ToGetTrunkSubPortArrayOutput() GetTrunkSubPortArrayOutput

func (GetTrunkSubPortArrayOutput) ToGetTrunkSubPortArrayOutputWithContext

func (o GetTrunkSubPortArrayOutput) ToGetTrunkSubPortArrayOutputWithContext(ctx context.Context) GetTrunkSubPortArrayOutput

type GetTrunkSubPortInput

type GetTrunkSubPortInput interface {
	pulumi.Input

	ToGetTrunkSubPortOutput() GetTrunkSubPortOutput
	ToGetTrunkSubPortOutputWithContext(context.Context) GetTrunkSubPortOutput
}

GetTrunkSubPortInput is an input type that accepts GetTrunkSubPortArgs and GetTrunkSubPortOutput values. You can construct a concrete instance of `GetTrunkSubPortInput` via:

GetTrunkSubPortArgs{...}

type GetTrunkSubPortOutput

type GetTrunkSubPortOutput struct{ *pulumi.OutputState }

func (GetTrunkSubPortOutput) ElementType

func (GetTrunkSubPortOutput) ElementType() reflect.Type

func (GetTrunkSubPortOutput) PortId

The ID of the trunk parent port.

func (GetTrunkSubPortOutput) SegmentationId

func (o GetTrunkSubPortOutput) SegmentationId() pulumi.IntOutput

The numeric id of the subport segment.

func (GetTrunkSubPortOutput) SegmentationType

func (o GetTrunkSubPortOutput) SegmentationType() pulumi.StringOutput

The segmenation tecnology used, e.g., "vlan".

func (GetTrunkSubPortOutput) ToGetTrunkSubPortOutput

func (o GetTrunkSubPortOutput) ToGetTrunkSubPortOutput() GetTrunkSubPortOutput

func (GetTrunkSubPortOutput) ToGetTrunkSubPortOutputWithContext

func (o GetTrunkSubPortOutput) ToGetTrunkSubPortOutputWithContext(ctx context.Context) GetTrunkSubPortOutput

type LookupAddressScopeArgs

type LookupAddressScopeArgs struct {
	// IP version.
	IpVersion *int `pulumi:"ipVersion"`
	// Name of the address-scope.
	Name *string `pulumi:"name"`
	// The owner of the address-scope.
	ProjectId *string `pulumi:"projectId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve address-scopes. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// Indicates whether this address-scope is shared across
	// all projects.
	Shared *bool `pulumi:"shared"`
}

A collection of arguments for invoking getAddressScope.

type LookupAddressScopeOutputArgs added in v3.5.0

type LookupAddressScopeOutputArgs struct {
	// IP version.
	IpVersion pulumi.IntPtrInput `pulumi:"ipVersion"`
	// Name of the address-scope.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The owner of the address-scope.
	ProjectId pulumi.StringPtrInput `pulumi:"projectId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve address-scopes. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// Indicates whether this address-scope is shared across
	// all projects.
	Shared pulumi.BoolPtrInput `pulumi:"shared"`
}

A collection of arguments for invoking getAddressScope.

func (LookupAddressScopeOutputArgs) ElementType added in v3.5.0

type LookupAddressScopeResult

type LookupAddressScopeResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// See Argument Reference above.
	IpVersion *int `pulumi:"ipVersion"`
	// See Argument Reference above.
	Name *string `pulumi:"name"`
	// See Argument Reference above.
	ProjectId *string `pulumi:"projectId"`
	Region    *string `pulumi:"region"`
	// See Argument Reference above.
	Shared *bool `pulumi:"shared"`
}

A collection of values returned by getAddressScope.

func LookupAddressScope

func LookupAddressScope(ctx *pulumi.Context, args *LookupAddressScopeArgs, opts ...pulumi.InvokeOption) (*LookupAddressScopeResult, error)

Use this data source to get the ID of an available OpenStack address-scope.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupAddressScope(ctx, &networking.LookupAddressScopeArgs{
			IpVersion: pulumi.IntRef(4),
			Name:      pulumi.StringRef("public_addressscope"),
			Shared:    pulumi.BoolRef(true),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupAddressScopeResultOutput added in v3.5.0

type LookupAddressScopeResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAddressScope.

func LookupAddressScopeOutput added in v3.5.0

func (LookupAddressScopeResultOutput) ElementType added in v3.5.0

func (LookupAddressScopeResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupAddressScopeResultOutput) IpVersion added in v3.5.0

See Argument Reference above.

func (LookupAddressScopeResultOutput) Name added in v3.5.0

See Argument Reference above.

func (LookupAddressScopeResultOutput) ProjectId added in v3.5.0

See Argument Reference above.

func (LookupAddressScopeResultOutput) Region added in v3.5.0

func (LookupAddressScopeResultOutput) Shared added in v3.5.0

See Argument Reference above.

func (LookupAddressScopeResultOutput) ToLookupAddressScopeResultOutput added in v3.5.0

func (o LookupAddressScopeResultOutput) ToLookupAddressScopeResultOutput() LookupAddressScopeResultOutput

func (LookupAddressScopeResultOutput) ToLookupAddressScopeResultOutputWithContext added in v3.5.0

func (o LookupAddressScopeResultOutput) ToLookupAddressScopeResultOutputWithContext(ctx context.Context) LookupAddressScopeResultOutput

type LookupFloatingIpArgs

type LookupFloatingIpArgs struct {
	// The IP address of the floating IP.
	Address *string `pulumi:"address"`
	// Human-readable description of the floating IP.
	Description *string `pulumi:"description"`
	// The specific IP address of the internal port which should be associated with the floating IP.
	FixedIp *string `pulumi:"fixedIp"`
	// The name of the pool from which the floating IP belongs to.
	Pool *string `pulumi:"pool"`
	// The ID of the port the floating IP is attached.
	PortId *string `pulumi:"portId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve floating IP ids. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// status of the floating IP (ACTIVE/DOWN).
	Status *string `pulumi:"status"`
	// The list of floating IP tags to filter.
	Tags []string `pulumi:"tags"`
	// The owner of the floating IP.
	TenantId *string `pulumi:"tenantId"`
}

A collection of arguments for invoking getFloatingIp.

type LookupFloatingIpOutputArgs added in v3.5.0

type LookupFloatingIpOutputArgs struct {
	// The IP address of the floating IP.
	Address pulumi.StringPtrInput `pulumi:"address"`
	// Human-readable description of the floating IP.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The specific IP address of the internal port which should be associated with the floating IP.
	FixedIp pulumi.StringPtrInput `pulumi:"fixedIp"`
	// The name of the pool from which the floating IP belongs to.
	Pool pulumi.StringPtrInput `pulumi:"pool"`
	// The ID of the port the floating IP is attached.
	PortId pulumi.StringPtrInput `pulumi:"portId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve floating IP ids. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// status of the floating IP (ACTIVE/DOWN).
	Status pulumi.StringPtrInput `pulumi:"status"`
	// The list of floating IP tags to filter.
	Tags pulumi.StringArrayInput `pulumi:"tags"`
	// The owner of the floating IP.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
}

A collection of arguments for invoking getFloatingIp.

func (LookupFloatingIpOutputArgs) ElementType added in v3.5.0

func (LookupFloatingIpOutputArgs) ElementType() reflect.Type

type LookupFloatingIpResult

type LookupFloatingIpResult struct {
	Address *string `pulumi:"address"`
	// A set of string tags applied on the floating IP.
	AllTags     []string `pulumi:"allTags"`
	Description *string  `pulumi:"description"`
	// The floating IP DNS domain. Available, when Neutron DNS
	// extension is enabled.
	DnsDomain string `pulumi:"dnsDomain"`
	// The floating IP DNS name. Available, when Neutron DNS extension
	// is enabled.
	DnsName string  `pulumi:"dnsName"`
	FixedIp *string `pulumi:"fixedIp"`
	// The provider-assigned unique ID for this managed resource.
	Id       string   `pulumi:"id"`
	Pool     *string  `pulumi:"pool"`
	PortId   *string  `pulumi:"portId"`
	Region   *string  `pulumi:"region"`
	Status   *string  `pulumi:"status"`
	Tags     []string `pulumi:"tags"`
	TenantId *string  `pulumi:"tenantId"`
}

A collection of values returned by getFloatingIp.

func LookupFloatingIp

func LookupFloatingIp(ctx *pulumi.Context, args *LookupFloatingIpArgs, opts ...pulumi.InvokeOption) (*LookupFloatingIpResult, error)

Use this data source to get the ID of an available OpenStack floating IP.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupFloatingIp(ctx, &networking.LookupFloatingIpArgs{
			Address: pulumi.StringRef("192.168.0.4"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupFloatingIpResultOutput added in v3.5.0

type LookupFloatingIpResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getFloatingIp.

func LookupFloatingIpOutput added in v3.5.0

func (LookupFloatingIpResultOutput) Address added in v3.5.0

func (LookupFloatingIpResultOutput) AllTags added in v3.5.0

A set of string tags applied on the floating IP.

func (LookupFloatingIpResultOutput) Description added in v3.5.0

func (LookupFloatingIpResultOutput) DnsDomain added in v3.5.0

The floating IP DNS domain. Available, when Neutron DNS extension is enabled.

func (LookupFloatingIpResultOutput) DnsName added in v3.5.0

The floating IP DNS name. Available, when Neutron DNS extension is enabled.

func (LookupFloatingIpResultOutput) ElementType added in v3.5.0

func (LookupFloatingIpResultOutput) FixedIp added in v3.5.0

func (LookupFloatingIpResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupFloatingIpResultOutput) Pool added in v3.5.0

func (LookupFloatingIpResultOutput) PortId added in v3.5.0

func (LookupFloatingIpResultOutput) Region added in v3.5.0

func (LookupFloatingIpResultOutput) Status added in v3.5.0

func (LookupFloatingIpResultOutput) Tags added in v3.5.0

func (LookupFloatingIpResultOutput) TenantId added in v3.5.0

func (LookupFloatingIpResultOutput) ToLookupFloatingIpResultOutput added in v3.5.0

func (o LookupFloatingIpResultOutput) ToLookupFloatingIpResultOutput() LookupFloatingIpResultOutput

func (LookupFloatingIpResultOutput) ToLookupFloatingIpResultOutputWithContext added in v3.5.0

func (o LookupFloatingIpResultOutput) ToLookupFloatingIpResultOutputWithContext(ctx context.Context) LookupFloatingIpResultOutput

type LookupNetworkArgs

type LookupNetworkArgs struct {
	// Human-readable description of the network.
	Description *string `pulumi:"description"`
	// The external routing facility of the network.
	External *bool `pulumi:"external"`
	// The CIDR of a subnet within the network.
	MatchingSubnetCidr *string `pulumi:"matchingSubnetCidr"`
	// The network MTU to filter. Available, when Neutron `net-mtu`
	// extension is enabled.
	Mtu *int `pulumi:"mtu"`
	// The name of the network.
	Name *string `pulumi:"name"`
	// The ID of the network.
	NetworkId *string `pulumi:"networkId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve networks ids. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// The status of the network.
	Status *string `pulumi:"status"`
	// The list of network tags to filter.
	Tags []string `pulumi:"tags"`
	// The owner of the network.
	TenantId *string `pulumi:"tenantId"`
	// The VLAN transparent attribute for the
	// network.
	TransparentVlan *bool `pulumi:"transparentVlan"`
}

A collection of arguments for invoking getNetwork.

type LookupNetworkOutputArgs added in v3.5.0

type LookupNetworkOutputArgs struct {
	// Human-readable description of the network.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The external routing facility of the network.
	External pulumi.BoolPtrInput `pulumi:"external"`
	// The CIDR of a subnet within the network.
	MatchingSubnetCidr pulumi.StringPtrInput `pulumi:"matchingSubnetCidr"`
	// The network MTU to filter. Available, when Neutron `net-mtu`
	// extension is enabled.
	Mtu pulumi.IntPtrInput `pulumi:"mtu"`
	// The name of the network.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The ID of the network.
	NetworkId pulumi.StringPtrInput `pulumi:"networkId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve networks ids. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// The status of the network.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// The list of network tags to filter.
	Tags pulumi.StringArrayInput `pulumi:"tags"`
	// The owner of the network.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// The VLAN transparent attribute for the
	// network.
	TransparentVlan pulumi.BoolPtrInput `pulumi:"transparentVlan"`
}

A collection of arguments for invoking getNetwork.

func (LookupNetworkOutputArgs) ElementType added in v3.5.0

func (LookupNetworkOutputArgs) ElementType() reflect.Type

type LookupNetworkResult

type LookupNetworkResult struct {
	// The administrative state of the network.
	AdminStateUp string `pulumi:"adminStateUp"`
	// The set of string tags applied on the network.
	AllTags []string `pulumi:"allTags"`
	// The availability zone candidates for the network.
	AvailabilityZoneHints []string `pulumi:"availabilityZoneHints"`
	// See Argument Reference above.
	Description *string `pulumi:"description"`
	// The network DNS domain. Available, when Neutron DNS extension
	// is enabled
	DnsDomain string `pulumi:"dnsDomain"`
	// See Argument Reference above.
	External *bool `pulumi:"external"`
	// The provider-assigned unique ID for this managed resource.
	Id                 string  `pulumi:"id"`
	MatchingSubnetCidr *string `pulumi:"matchingSubnetCidr"`
	// See Argument Reference above.
	Mtu *int `pulumi:"mtu"`
	// See Argument Reference above.
	Name      *string `pulumi:"name"`
	NetworkId *string `pulumi:"networkId"`
	// See Argument Reference above.
	Region string `pulumi:"region"`
	// An array of one or more provider segment objects.
	Segments []GetNetworkSegment `pulumi:"segments"`
	// Specifies whether the network resource can be accessed by any
	// tenant or not.
	Shared string  `pulumi:"shared"`
	Status *string `pulumi:"status"`
	// A list of subnet IDs belonging to the network.
	Subnets  []string `pulumi:"subnets"`
	Tags     []string `pulumi:"tags"`
	TenantId *string  `pulumi:"tenantId"`
	// See Argument Reference above.
	TransparentVlan *bool `pulumi:"transparentVlan"`
}

A collection of values returned by getNetwork.

func LookupNetwork

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

Use this data source to get the ID of an available OpenStack network.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupNetwork(ctx, &networking.LookupNetworkArgs{
			Name: pulumi.StringRef("tf_test_network"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupNetworkResultOutput added in v3.5.0

type LookupNetworkResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getNetwork.

func LookupNetworkOutput added in v3.5.0

func LookupNetworkOutput(ctx *pulumi.Context, args LookupNetworkOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkResultOutput

func (LookupNetworkResultOutput) AdminStateUp added in v3.5.0

The administrative state of the network.

func (LookupNetworkResultOutput) AllTags added in v3.5.0

The set of string tags applied on the network.

func (LookupNetworkResultOutput) AvailabilityZoneHints added in v3.5.0

func (o LookupNetworkResultOutput) AvailabilityZoneHints() pulumi.StringArrayOutput

The availability zone candidates for the network.

func (LookupNetworkResultOutput) Description added in v3.5.0

See Argument Reference above.

func (LookupNetworkResultOutput) DnsDomain added in v3.5.0

The network DNS domain. Available, when Neutron DNS extension is enabled

func (LookupNetworkResultOutput) ElementType added in v3.5.0

func (LookupNetworkResultOutput) ElementType() reflect.Type

func (LookupNetworkResultOutput) External added in v3.5.0

See Argument Reference above.

func (LookupNetworkResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupNetworkResultOutput) MatchingSubnetCidr added in v3.5.0

func (o LookupNetworkResultOutput) MatchingSubnetCidr() pulumi.StringPtrOutput

func (LookupNetworkResultOutput) Mtu added in v3.5.0

See Argument Reference above.

func (LookupNetworkResultOutput) Name added in v3.5.0

See Argument Reference above.

func (LookupNetworkResultOutput) NetworkId added in v3.5.0

func (LookupNetworkResultOutput) Region added in v3.5.0

See Argument Reference above.

func (LookupNetworkResultOutput) Segments added in v3.12.0

An array of one or more provider segment objects.

func (LookupNetworkResultOutput) Shared added in v3.5.0

Specifies whether the network resource can be accessed by any tenant or not.

func (LookupNetworkResultOutput) Status added in v3.5.0

func (LookupNetworkResultOutput) Subnets added in v3.5.0

A list of subnet IDs belonging to the network.

func (LookupNetworkResultOutput) Tags added in v3.5.0

func (LookupNetworkResultOutput) TenantId added in v3.5.0

func (LookupNetworkResultOutput) ToLookupNetworkResultOutput added in v3.5.0

func (o LookupNetworkResultOutput) ToLookupNetworkResultOutput() LookupNetworkResultOutput

func (LookupNetworkResultOutput) ToLookupNetworkResultOutputWithContext added in v3.5.0

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

func (LookupNetworkResultOutput) TransparentVlan added in v3.5.0

func (o LookupNetworkResultOutput) TransparentVlan() pulumi.BoolPtrOutput

See Argument Reference above.

type LookupPortArgs

type LookupPortArgs struct {
	// The administrative state of the port.
	AdminStateUp *bool `pulumi:"adminStateUp"`
	// Human-readable description of the port.
	Description *string `pulumi:"description"`
	// The ID of the device the port belongs to.
	DeviceId *string `pulumi:"deviceId"`
	// The device owner of the port.
	DeviceOwner *string `pulumi:"deviceOwner"`
	// The port DNS name to filter. Available, when Neutron
	// DNS extension is enabled.
	DnsName *string `pulumi:"dnsName"`
	// The port IP address filter.
	FixedIp *string `pulumi:"fixedIp"`
	// The MAC address of the port.
	MacAddress *string `pulumi:"macAddress"`
	// The name of the port.
	Name *string `pulumi:"name"`
	// The ID of the network the port belongs to.
	NetworkId *string `pulumi:"networkId"`
	// The ID of the port.
	PortId *string `pulumi:"portId"`
	// The owner of the port.
	ProjectId *string `pulumi:"projectId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve port ids. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// The list of port security group IDs to filter.
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	// The status of the port.
	Status *string `pulumi:"status"`
	// The list of port tags to filter.
	Tags     []string `pulumi:"tags"`
	TenantId *string  `pulumi:"tenantId"`
}

A collection of arguments for invoking getPort.

type LookupPortOutputArgs added in v3.5.0

type LookupPortOutputArgs struct {
	// The administrative state of the port.
	AdminStateUp pulumi.BoolPtrInput `pulumi:"adminStateUp"`
	// Human-readable description of the port.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The ID of the device the port belongs to.
	DeviceId pulumi.StringPtrInput `pulumi:"deviceId"`
	// The device owner of the port.
	DeviceOwner pulumi.StringPtrInput `pulumi:"deviceOwner"`
	// The port DNS name to filter. Available, when Neutron
	// DNS extension is enabled.
	DnsName pulumi.StringPtrInput `pulumi:"dnsName"`
	// The port IP address filter.
	FixedIp pulumi.StringPtrInput `pulumi:"fixedIp"`
	// The MAC address of the port.
	MacAddress pulumi.StringPtrInput `pulumi:"macAddress"`
	// The name of the port.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The ID of the network the port belongs to.
	NetworkId pulumi.StringPtrInput `pulumi:"networkId"`
	// The ID of the port.
	PortId pulumi.StringPtrInput `pulumi:"portId"`
	// The owner of the port.
	ProjectId pulumi.StringPtrInput `pulumi:"projectId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve port ids. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// The list of port security group IDs to filter.
	SecurityGroupIds pulumi.StringArrayInput `pulumi:"securityGroupIds"`
	// The status of the port.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// The list of port tags to filter.
	Tags     pulumi.StringArrayInput `pulumi:"tags"`
	TenantId pulumi.StringPtrInput   `pulumi:"tenantId"`
}

A collection of arguments for invoking getPort.

func (LookupPortOutputArgs) ElementType added in v3.5.0

func (LookupPortOutputArgs) ElementType() reflect.Type

type LookupPortResult

type LookupPortResult struct {
	// See Argument Reference above.
	AdminStateUp *bool `pulumi:"adminStateUp"`
	// The collection of Fixed IP addresses on the port in the
	// order returned by the Network v2 API.
	AllFixedIps []string `pulumi:"allFixedIps"`
	// The set of security group IDs applied on the port.
	AllSecurityGroupIds []string `pulumi:"allSecurityGroupIds"`
	// The set of string tags applied on the port.
	AllTags []string `pulumi:"allTags"`
	// An IP/MAC Address pair of additional IP
	// addresses that can be active on this port. The structure is described
	// below.
	AllowedAddressPairs []GetPortAllowedAddressPair `pulumi:"allowedAddressPairs"`
	// The port binding information. The structure is described below.
	Bindings []GetPortBinding `pulumi:"bindings"`
	// See Argument Reference above.
	Description *string `pulumi:"description"`
	// See Argument Reference above.
	DeviceId *string `pulumi:"deviceId"`
	// See Argument Reference above.
	DeviceOwner *string `pulumi:"deviceOwner"`
	// The list of maps representing port DNS assignments.
	DnsAssignments []map[string]interface{} `pulumi:"dnsAssignments"`
	// See Argument Reference above.
	DnsName *string `pulumi:"dnsName"`
	// An extra DHCP option configured on the port.
	// The structure is described below.
	ExtraDhcpOptions []GetPortExtraDhcpOption `pulumi:"extraDhcpOptions"`
	FixedIp          *string                  `pulumi:"fixedIp"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The additional MAC address.
	MacAddress *string `pulumi:"macAddress"`
	// Name of the DHCP option.
	Name *string `pulumi:"name"`
	// See Argument Reference above.
	NetworkId *string `pulumi:"networkId"`
	// See Argument Reference above.
	PortId *string `pulumi:"portId"`
	// See Argument Reference above.
	ProjectId *string `pulumi:"projectId"`
	// See Argument Reference above.
	Region           *string  `pulumi:"region"`
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	Status           *string  `pulumi:"status"`
	Tags             []string `pulumi:"tags"`
	TenantId         *string  `pulumi:"tenantId"`
}

A collection of values returned by getPort.

func LookupPort

func LookupPort(ctx *pulumi.Context, args *LookupPortArgs, opts ...pulumi.InvokeOption) (*LookupPortResult, error)

Use this data source to get the ID of an available OpenStack port.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupPort(ctx, &networking.LookupPortArgs{
			Name: pulumi.StringRef("port_1"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupPortResultOutput added in v3.5.0

type LookupPortResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getPort.

func LookupPortOutput added in v3.5.0

func LookupPortOutput(ctx *pulumi.Context, args LookupPortOutputArgs, opts ...pulumi.InvokeOption) LookupPortResultOutput

func (LookupPortResultOutput) AdminStateUp added in v3.5.0

func (o LookupPortResultOutput) AdminStateUp() pulumi.BoolPtrOutput

See Argument Reference above.

func (LookupPortResultOutput) AllFixedIps added in v3.5.0

The collection of Fixed IP addresses on the port in the order returned by the Network v2 API.

func (LookupPortResultOutput) AllSecurityGroupIds added in v3.5.0

func (o LookupPortResultOutput) AllSecurityGroupIds() pulumi.StringArrayOutput

The set of security group IDs applied on the port.

func (LookupPortResultOutput) AllTags added in v3.5.0

The set of string tags applied on the port.

func (LookupPortResultOutput) AllowedAddressPairs added in v3.5.0

An IP/MAC Address pair of additional IP addresses that can be active on this port. The structure is described below.

func (LookupPortResultOutput) Bindings added in v3.5.0

The port binding information. The structure is described below.

func (LookupPortResultOutput) Description added in v3.5.0

See Argument Reference above.

func (LookupPortResultOutput) DeviceId added in v3.5.0

See Argument Reference above.

func (LookupPortResultOutput) DeviceOwner added in v3.5.0

See Argument Reference above.

func (LookupPortResultOutput) DnsAssignments added in v3.5.0

func (o LookupPortResultOutput) DnsAssignments() pulumi.MapArrayOutput

The list of maps representing port DNS assignments.

func (LookupPortResultOutput) DnsName added in v3.5.0

See Argument Reference above.

func (LookupPortResultOutput) ElementType added in v3.5.0

func (LookupPortResultOutput) ElementType() reflect.Type

func (LookupPortResultOutput) ExtraDhcpOptions added in v3.5.0

An extra DHCP option configured on the port. The structure is described below.

func (LookupPortResultOutput) FixedIp added in v3.5.0

func (LookupPortResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupPortResultOutput) MacAddress added in v3.5.0

The additional MAC address.

func (LookupPortResultOutput) Name added in v3.5.0

Name of the DHCP option.

func (LookupPortResultOutput) NetworkId added in v3.5.0

See Argument Reference above.

func (LookupPortResultOutput) PortId added in v3.5.0

See Argument Reference above.

func (LookupPortResultOutput) ProjectId added in v3.5.0

See Argument Reference above.

func (LookupPortResultOutput) Region added in v3.5.0

See Argument Reference above.

func (LookupPortResultOutput) SecurityGroupIds added in v3.5.0

func (o LookupPortResultOutput) SecurityGroupIds() pulumi.StringArrayOutput

func (LookupPortResultOutput) Status added in v3.5.0

func (LookupPortResultOutput) Tags added in v3.5.0

func (LookupPortResultOutput) TenantId added in v3.5.0

func (LookupPortResultOutput) ToLookupPortResultOutput added in v3.5.0

func (o LookupPortResultOutput) ToLookupPortResultOutput() LookupPortResultOutput

func (LookupPortResultOutput) ToLookupPortResultOutputWithContext added in v3.5.0

func (o LookupPortResultOutput) ToLookupPortResultOutputWithContext(ctx context.Context) LookupPortResultOutput

type LookupQosBandwidthLimitRuleArgs

type LookupQosBandwidthLimitRuleArgs struct {
	// The maximum burst size in kilobits of a QoS bandwidth limit rule.
	MaxBurstKbps *int `pulumi:"maxBurstKbps"`
	// The maximum kilobits per second of a QoS bandwidth limit rule.
	MaxKbps *int `pulumi:"maxKbps"`
	// The QoS policy reference.
	QosPolicyId string `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
}

A collection of arguments for invoking getQosBandwidthLimitRule.

type LookupQosBandwidthLimitRuleOutputArgs added in v3.5.0

type LookupQosBandwidthLimitRuleOutputArgs struct {
	// The maximum burst size in kilobits of a QoS bandwidth limit rule.
	MaxBurstKbps pulumi.IntPtrInput `pulumi:"maxBurstKbps"`
	// The maximum kilobits per second of a QoS bandwidth limit rule.
	MaxKbps pulumi.IntPtrInput `pulumi:"maxKbps"`
	// The QoS policy reference.
	QosPolicyId pulumi.StringInput `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

A collection of arguments for invoking getQosBandwidthLimitRule.

func (LookupQosBandwidthLimitRuleOutputArgs) ElementType added in v3.5.0

type LookupQosBandwidthLimitRuleResult

type LookupQosBandwidthLimitRuleResult struct {
	// See Argument Reference above.
	Direction string `pulumi:"direction"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// See Argument Reference above.
	MaxBurstKbps int `pulumi:"maxBurstKbps"`
	// See Argument Reference above.
	MaxKbps int `pulumi:"maxKbps"`
	// See Argument Reference above.
	QosPolicyId string `pulumi:"qosPolicyId"`
	// See Argument Reference above.
	Region string `pulumi:"region"`
}

A collection of values returned by getQosBandwidthLimitRule.

func LookupQosBandwidthLimitRule

func LookupQosBandwidthLimitRule(ctx *pulumi.Context, args *LookupQosBandwidthLimitRuleArgs, opts ...pulumi.InvokeOption) (*LookupQosBandwidthLimitRuleResult, error)

Use this data source to get the ID of an available OpenStack QoS bandwidth limit rule.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupQosBandwidthLimitRule(ctx, &networking.LookupQosBandwidthLimitRuleArgs{
			MaxKbps: pulumi.IntRef(300),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupQosBandwidthLimitRuleResultOutput added in v3.5.0

type LookupQosBandwidthLimitRuleResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getQosBandwidthLimitRule.

func (LookupQosBandwidthLimitRuleResultOutput) Direction added in v3.5.0

See Argument Reference above.

func (LookupQosBandwidthLimitRuleResultOutput) ElementType added in v3.5.0

func (LookupQosBandwidthLimitRuleResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupQosBandwidthLimitRuleResultOutput) MaxBurstKbps added in v3.5.0

See Argument Reference above.

func (LookupQosBandwidthLimitRuleResultOutput) MaxKbps added in v3.5.0

See Argument Reference above.

func (LookupQosBandwidthLimitRuleResultOutput) QosPolicyId added in v3.5.0

See Argument Reference above.

func (LookupQosBandwidthLimitRuleResultOutput) Region added in v3.5.0

See Argument Reference above.

func (LookupQosBandwidthLimitRuleResultOutput) ToLookupQosBandwidthLimitRuleResultOutput added in v3.5.0

func (o LookupQosBandwidthLimitRuleResultOutput) ToLookupQosBandwidthLimitRuleResultOutput() LookupQosBandwidthLimitRuleResultOutput

func (LookupQosBandwidthLimitRuleResultOutput) ToLookupQosBandwidthLimitRuleResultOutputWithContext added in v3.5.0

func (o LookupQosBandwidthLimitRuleResultOutput) ToLookupQosBandwidthLimitRuleResultOutputWithContext(ctx context.Context) LookupQosBandwidthLimitRuleResultOutput

type LookupQosDscpMarkingRuleArgs

type LookupQosDscpMarkingRuleArgs struct {
	// The value of a DSCP mark.
	DscpMark *int `pulumi:"dscpMark"`
	// The QoS policy reference.
	QosPolicyId string `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
}

A collection of arguments for invoking getQosDscpMarkingRule.

type LookupQosDscpMarkingRuleOutputArgs added in v3.5.0

type LookupQosDscpMarkingRuleOutputArgs struct {
	// The value of a DSCP mark.
	DscpMark pulumi.IntPtrInput `pulumi:"dscpMark"`
	// The QoS policy reference.
	QosPolicyId pulumi.StringInput `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

A collection of arguments for invoking getQosDscpMarkingRule.

func (LookupQosDscpMarkingRuleOutputArgs) ElementType added in v3.5.0

type LookupQosDscpMarkingRuleResult

type LookupQosDscpMarkingRuleResult struct {
	// See Argument Reference above.
	DscpMark int `pulumi:"dscpMark"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// See Argument Reference above.
	QosPolicyId string `pulumi:"qosPolicyId"`
	// See Argument Reference above.
	Region string `pulumi:"region"`
}

A collection of values returned by getQosDscpMarkingRule.

func LookupQosDscpMarkingRule

func LookupQosDscpMarkingRule(ctx *pulumi.Context, args *LookupQosDscpMarkingRuleArgs, opts ...pulumi.InvokeOption) (*LookupQosDscpMarkingRuleResult, error)

Use this data source to get the ID of an available OpenStack QoS DSCP marking rule.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupQosDscpMarkingRule(ctx, &networking.LookupQosDscpMarkingRuleArgs{
			DscpMark: pulumi.IntRef(26),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupQosDscpMarkingRuleResultOutput added in v3.5.0

type LookupQosDscpMarkingRuleResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getQosDscpMarkingRule.

func (LookupQosDscpMarkingRuleResultOutput) DscpMark added in v3.5.0

See Argument Reference above.

func (LookupQosDscpMarkingRuleResultOutput) ElementType added in v3.5.0

func (LookupQosDscpMarkingRuleResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupQosDscpMarkingRuleResultOutput) QosPolicyId added in v3.5.0

See Argument Reference above.

func (LookupQosDscpMarkingRuleResultOutput) Region added in v3.5.0

See Argument Reference above.

func (LookupQosDscpMarkingRuleResultOutput) ToLookupQosDscpMarkingRuleResultOutput added in v3.5.0

func (o LookupQosDscpMarkingRuleResultOutput) ToLookupQosDscpMarkingRuleResultOutput() LookupQosDscpMarkingRuleResultOutput

func (LookupQosDscpMarkingRuleResultOutput) ToLookupQosDscpMarkingRuleResultOutputWithContext added in v3.5.0

func (o LookupQosDscpMarkingRuleResultOutput) ToLookupQosDscpMarkingRuleResultOutputWithContext(ctx context.Context) LookupQosDscpMarkingRuleResultOutput

type LookupQosMinimumBandwidthRuleArgs

type LookupQosMinimumBandwidthRuleArgs struct {
	Direction *string `pulumi:"direction"`
	// The value of a minimum kbps bandwidth.
	MinKbps *int `pulumi:"minKbps"`
	// The QoS policy reference.
	QosPolicyId string `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
}

A collection of arguments for invoking getQosMinimumBandwidthRule.

type LookupQosMinimumBandwidthRuleOutputArgs added in v3.5.0

type LookupQosMinimumBandwidthRuleOutputArgs struct {
	Direction pulumi.StringPtrInput `pulumi:"direction"`
	// The value of a minimum kbps bandwidth.
	MinKbps pulumi.IntPtrInput `pulumi:"minKbps"`
	// The QoS policy reference.
	QosPolicyId pulumi.StringInput `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

A collection of arguments for invoking getQosMinimumBandwidthRule.

func (LookupQosMinimumBandwidthRuleOutputArgs) ElementType added in v3.5.0

type LookupQosMinimumBandwidthRuleResult

type LookupQosMinimumBandwidthRuleResult struct {
	Direction string `pulumi:"direction"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// See Argument Reference above.
	MinKbps int `pulumi:"minKbps"`
	// See Argument Reference above.
	QosPolicyId string `pulumi:"qosPolicyId"`
	// See Argument Reference above.
	Region string `pulumi:"region"`
}

A collection of values returned by getQosMinimumBandwidthRule.

func LookupQosMinimumBandwidthRule

Use this data source to get the ID of an available OpenStack QoS minimum bandwidth rule.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupQosMinimumBandwidthRule(ctx, &networking.LookupQosMinimumBandwidthRuleArgs{
			MinKbps: pulumi.IntRef(2000),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupQosMinimumBandwidthRuleResultOutput added in v3.5.0

type LookupQosMinimumBandwidthRuleResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getQosMinimumBandwidthRule.

func (LookupQosMinimumBandwidthRuleResultOutput) Direction added in v3.5.0

func (LookupQosMinimumBandwidthRuleResultOutput) ElementType added in v3.5.0

func (LookupQosMinimumBandwidthRuleResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupQosMinimumBandwidthRuleResultOutput) MinKbps added in v3.5.0

See Argument Reference above.

func (LookupQosMinimumBandwidthRuleResultOutput) QosPolicyId added in v3.5.0

See Argument Reference above.

func (LookupQosMinimumBandwidthRuleResultOutput) Region added in v3.5.0

See Argument Reference above.

func (LookupQosMinimumBandwidthRuleResultOutput) ToLookupQosMinimumBandwidthRuleResultOutput added in v3.5.0

func (o LookupQosMinimumBandwidthRuleResultOutput) ToLookupQosMinimumBandwidthRuleResultOutput() LookupQosMinimumBandwidthRuleResultOutput

func (LookupQosMinimumBandwidthRuleResultOutput) ToLookupQosMinimumBandwidthRuleResultOutputWithContext added in v3.5.0

func (o LookupQosMinimumBandwidthRuleResultOutput) ToLookupQosMinimumBandwidthRuleResultOutputWithContext(ctx context.Context) LookupQosMinimumBandwidthRuleResultOutput

type LookupQosPolicyArgs

type LookupQosPolicyArgs struct {
	// The human-readable description for the QoS policy.
	Description *string `pulumi:"description"`
	// Whether the QoS policy is default policy or not.
	IsDefault *bool `pulumi:"isDefault"`
	// The name of the QoS policy.
	Name *string `pulumi:"name"`
	// The owner of the QoS policy.
	ProjectId *string `pulumi:"projectId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to retrieve a QoS policy ID. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// Whether this QoS policy is shared across all projects.
	Shared *bool `pulumi:"shared"`
	// The list of QoS policy tags to filter.
	Tags []string `pulumi:"tags"`
}

A collection of arguments for invoking getQosPolicy.

type LookupQosPolicyOutputArgs added in v3.5.0

type LookupQosPolicyOutputArgs struct {
	// The human-readable description for the QoS policy.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Whether the QoS policy is default policy or not.
	IsDefault pulumi.BoolPtrInput `pulumi:"isDefault"`
	// The name of the QoS policy.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The owner of the QoS policy.
	ProjectId pulumi.StringPtrInput `pulumi:"projectId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to retrieve a QoS policy ID. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// Whether this QoS policy is shared across all projects.
	Shared pulumi.BoolPtrInput `pulumi:"shared"`
	// The list of QoS policy tags to filter.
	Tags pulumi.StringArrayInput `pulumi:"tags"`
}

A collection of arguments for invoking getQosPolicy.

func (LookupQosPolicyOutputArgs) ElementType added in v3.5.0

func (LookupQosPolicyOutputArgs) ElementType() reflect.Type

type LookupQosPolicyResult

type LookupQosPolicyResult struct {
	// The set of string tags applied on the QoS policy.
	AllTags []string `pulumi:"allTags"`
	// The time at which QoS policy was created.
	CreatedAt string `pulumi:"createdAt"`
	// See Argument Reference above.
	Description string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// See Argument Reference above.
	IsDefault bool `pulumi:"isDefault"`
	// See Argument Reference above.
	Name      string `pulumi:"name"`
	ProjectId string `pulumi:"projectId"`
	// See Argument Reference above.
	Region string `pulumi:"region"`
	// The revision number of the QoS policy.
	RevisionNumber int `pulumi:"revisionNumber"`
	// See Argument Reference above.
	Shared bool     `pulumi:"shared"`
	Tags   []string `pulumi:"tags"`
	// The time at which QoS policy was created.
	UpdatedAt string `pulumi:"updatedAt"`
}

A collection of values returned by getQosPolicy.

func LookupQosPolicy

func LookupQosPolicy(ctx *pulumi.Context, args *LookupQosPolicyArgs, opts ...pulumi.InvokeOption) (*LookupQosPolicyResult, error)

Use this data source to get the ID of an available OpenStack QoS policy.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupQosPolicy(ctx, &networking.LookupQosPolicyArgs{
			Name: pulumi.StringRef("qos_policy_1"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupQosPolicyResultOutput added in v3.5.0

type LookupQosPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getQosPolicy.

func LookupQosPolicyOutput added in v3.5.0

func (LookupQosPolicyResultOutput) AllTags added in v3.5.0

The set of string tags applied on the QoS policy.

func (LookupQosPolicyResultOutput) CreatedAt added in v3.5.0

The time at which QoS policy was created.

func (LookupQosPolicyResultOutput) Description added in v3.5.0

See Argument Reference above.

func (LookupQosPolicyResultOutput) ElementType added in v3.5.0

func (LookupQosPolicyResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupQosPolicyResultOutput) IsDefault added in v3.5.0

See Argument Reference above.

func (LookupQosPolicyResultOutput) Name added in v3.5.0

See Argument Reference above.

func (LookupQosPolicyResultOutput) ProjectId added in v3.5.0

func (LookupQosPolicyResultOutput) Region added in v3.5.0

See Argument Reference above.

func (LookupQosPolicyResultOutput) RevisionNumber added in v3.5.0

func (o LookupQosPolicyResultOutput) RevisionNumber() pulumi.IntOutput

The revision number of the QoS policy.

func (LookupQosPolicyResultOutput) Shared added in v3.5.0

See Argument Reference above.

func (LookupQosPolicyResultOutput) Tags added in v3.5.0

func (LookupQosPolicyResultOutput) ToLookupQosPolicyResultOutput added in v3.5.0

func (o LookupQosPolicyResultOutput) ToLookupQosPolicyResultOutput() LookupQosPolicyResultOutput

func (LookupQosPolicyResultOutput) ToLookupQosPolicyResultOutputWithContext added in v3.5.0

func (o LookupQosPolicyResultOutput) ToLookupQosPolicyResultOutputWithContext(ctx context.Context) LookupQosPolicyResultOutput

func (LookupQosPolicyResultOutput) UpdatedAt added in v3.5.0

The time at which QoS policy was created.

type LookupQuotaV2Args added in v3.7.0

type LookupQuotaV2Args struct {
	// The id of the project to retrieve the quota.
	ProjectId string `pulumi:"projectId"`
	// The region in which to obtain the V2 Network client.
	// If omitted, the `region` argument of the provider is used.
	Region *string `pulumi:"region"`
}

A collection of arguments for invoking getQuotaV2.

type LookupQuotaV2OutputArgs added in v3.7.0

type LookupQuotaV2OutputArgs struct {
	// The id of the project to retrieve the quota.
	ProjectId pulumi.StringInput `pulumi:"projectId"`
	// The region in which to obtain the V2 Network client.
	// If omitted, the `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

A collection of arguments for invoking getQuotaV2.

func (LookupQuotaV2OutputArgs) ElementType added in v3.7.0

func (LookupQuotaV2OutputArgs) ElementType() reflect.Type

type LookupQuotaV2Result added in v3.7.0

type LookupQuotaV2Result struct {
	// The number of allowed floating ips.
	Floatingip int `pulumi:"floatingip"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The number of allowed networks.
	Network int `pulumi:"network"`
	// The number of allowed ports.
	Port int `pulumi:"port"`
	// See Argument Reference above.
	ProjectId string `pulumi:"projectId"`
	// The number of allowed rbac policies.
	RbacPolicy int `pulumi:"rbacPolicy"`
	// See Argument Reference above.
	Region string `pulumi:"region"`
	// The amount of allowed routers.
	Router int `pulumi:"router"`
	// The number of allowed security groups.
	SecurityGroup int `pulumi:"securityGroup"`
	// The number of allowed security group rules.
	SecurityGroupRule int `pulumi:"securityGroupRule"`
	// The number of allowed subnets.
	// * `subnetpool-` - The number of allowed subnet pools.
	Subnet     int `pulumi:"subnet"`
	Subnetpool int `pulumi:"subnetpool"`
}

A collection of values returned by getQuotaV2.

func LookupQuotaV2 added in v3.7.0

func LookupQuotaV2(ctx *pulumi.Context, args *LookupQuotaV2Args, opts ...pulumi.InvokeOption) (*LookupQuotaV2Result, error)

Use this data source to get the networking quota of an OpenStack project.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupQuotaV2(ctx, &networking.LookupQuotaV2Args{
			ProjectId: "2e367a3d29f94fd988e6ec54e305ec9d",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupQuotaV2ResultOutput added in v3.7.0

type LookupQuotaV2ResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getQuotaV2.

func LookupQuotaV2Output added in v3.7.0

func LookupQuotaV2Output(ctx *pulumi.Context, args LookupQuotaV2OutputArgs, opts ...pulumi.InvokeOption) LookupQuotaV2ResultOutput

func (LookupQuotaV2ResultOutput) ElementType added in v3.7.0

func (LookupQuotaV2ResultOutput) ElementType() reflect.Type

func (LookupQuotaV2ResultOutput) Floatingip added in v3.7.0

The number of allowed floating ips.

func (LookupQuotaV2ResultOutput) Id added in v3.7.0

The provider-assigned unique ID for this managed resource.

func (LookupQuotaV2ResultOutput) Network added in v3.7.0

The number of allowed networks.

func (LookupQuotaV2ResultOutput) Port added in v3.7.0

The number of allowed ports.

func (LookupQuotaV2ResultOutput) ProjectId added in v3.7.0

See Argument Reference above.

func (LookupQuotaV2ResultOutput) RbacPolicy added in v3.7.0

The number of allowed rbac policies.

func (LookupQuotaV2ResultOutput) Region added in v3.7.0

See Argument Reference above.

func (LookupQuotaV2ResultOutput) Router added in v3.7.0

The amount of allowed routers.

func (LookupQuotaV2ResultOutput) SecurityGroup added in v3.7.0

func (o LookupQuotaV2ResultOutput) SecurityGroup() pulumi.IntOutput

The number of allowed security groups.

func (LookupQuotaV2ResultOutput) SecurityGroupRule added in v3.7.0

func (o LookupQuotaV2ResultOutput) SecurityGroupRule() pulumi.IntOutput

The number of allowed security group rules.

func (LookupQuotaV2ResultOutput) Subnet added in v3.7.0

The number of allowed subnets. * `subnetpool-` - The number of allowed subnet pools.

func (LookupQuotaV2ResultOutput) Subnetpool added in v3.7.0

func (LookupQuotaV2ResultOutput) ToLookupQuotaV2ResultOutput added in v3.7.0

func (o LookupQuotaV2ResultOutput) ToLookupQuotaV2ResultOutput() LookupQuotaV2ResultOutput

func (LookupQuotaV2ResultOutput) ToLookupQuotaV2ResultOutputWithContext added in v3.7.0

func (o LookupQuotaV2ResultOutput) ToLookupQuotaV2ResultOutputWithContext(ctx context.Context) LookupQuotaV2ResultOutput

type LookupRouterArgs

type LookupRouterArgs struct {
	// Administrative up/down status for the router (must be "true" or "false" if provided).
	AdminStateUp *bool `pulumi:"adminStateUp"`
	// Human-readable description of the router.
	Description *string `pulumi:"description"`
	// Indicates whether or not to get a distributed router.
	Distributed *bool `pulumi:"distributed"`
	// The value that points out if the Source NAT is enabled on the router.
	EnableSnat *bool `pulumi:"enableSnat"`
	// The name of the router.
	Name *string `pulumi:"name"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve router ids. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// The UUID of the router resource.
	RouterId *string `pulumi:"routerId"`
	// The status of the router (ACTIVE/DOWN).
	Status *string `pulumi:"status"`
	// The list of router tags to filter.
	Tags []string `pulumi:"tags"`
	// The owner of the router.
	TenantId *string `pulumi:"tenantId"`
}

A collection of arguments for invoking getRouter.

type LookupRouterOutputArgs added in v3.5.0

type LookupRouterOutputArgs struct {
	// Administrative up/down status for the router (must be "true" or "false" if provided).
	AdminStateUp pulumi.BoolPtrInput `pulumi:"adminStateUp"`
	// Human-readable description of the router.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Indicates whether or not to get a distributed router.
	Distributed pulumi.BoolPtrInput `pulumi:"distributed"`
	// The value that points out if the Source NAT is enabled on the router.
	EnableSnat pulumi.BoolPtrInput `pulumi:"enableSnat"`
	// The name of the router.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve router ids. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// The UUID of the router resource.
	RouterId pulumi.StringPtrInput `pulumi:"routerId"`
	// The status of the router (ACTIVE/DOWN).
	Status pulumi.StringPtrInput `pulumi:"status"`
	// The list of router tags to filter.
	Tags pulumi.StringArrayInput `pulumi:"tags"`
	// The owner of the router.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
}

A collection of arguments for invoking getRouter.

func (LookupRouterOutputArgs) ElementType added in v3.5.0

func (LookupRouterOutputArgs) ElementType() reflect.Type

type LookupRouterResult

type LookupRouterResult struct {
	AdminStateUp *bool `pulumi:"adminStateUp"`
	// The set of string tags applied on the router.
	AllTags []string `pulumi:"allTags"`
	// The availability zone that is used to make router resources highly available.
	AvailabilityZoneHints []string `pulumi:"availabilityZoneHints"`
	Description           *string  `pulumi:"description"`
	Distributed           *bool    `pulumi:"distributed"`
	// The value that points out if the Source NAT is enabled on the router.
	EnableSnat bool `pulumi:"enableSnat"`
	// The external fixed IPs of the router.
	ExternalFixedIps []GetRouterExternalFixedIp `pulumi:"externalFixedIps"`
	// The network UUID of an external gateway for the router.
	ExternalNetworkId string `pulumi:"externalNetworkId"`
	// The provider-assigned unique ID for this managed resource.
	Id       string   `pulumi:"id"`
	Name     *string  `pulumi:"name"`
	Region   *string  `pulumi:"region"`
	RouterId *string  `pulumi:"routerId"`
	Status   *string  `pulumi:"status"`
	Tags     []string `pulumi:"tags"`
	TenantId *string  `pulumi:"tenantId"`
}

A collection of values returned by getRouter.

func LookupRouter

func LookupRouter(ctx *pulumi.Context, args *LookupRouterArgs, opts ...pulumi.InvokeOption) (*LookupRouterResult, error)

Use this data source to get the ID of an available OpenStack router.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupRouter(ctx, &networking.LookupRouterArgs{
			Name: pulumi.StringRef("router_1"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupRouterResultOutput added in v3.5.0

type LookupRouterResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getRouter.

func LookupRouterOutput added in v3.5.0

func LookupRouterOutput(ctx *pulumi.Context, args LookupRouterOutputArgs, opts ...pulumi.InvokeOption) LookupRouterResultOutput

func (LookupRouterResultOutput) AdminStateUp added in v3.5.0

func (LookupRouterResultOutput) AllTags added in v3.5.0

The set of string tags applied on the router.

func (LookupRouterResultOutput) AvailabilityZoneHints added in v3.5.0

func (o LookupRouterResultOutput) AvailabilityZoneHints() pulumi.StringArrayOutput

The availability zone that is used to make router resources highly available.

func (LookupRouterResultOutput) Description added in v3.5.0

func (LookupRouterResultOutput) Distributed added in v3.5.0

func (LookupRouterResultOutput) ElementType added in v3.5.0

func (LookupRouterResultOutput) ElementType() reflect.Type

func (LookupRouterResultOutput) EnableSnat added in v3.5.0

The value that points out if the Source NAT is enabled on the router.

func (LookupRouterResultOutput) ExternalFixedIps added in v3.5.0

The external fixed IPs of the router.

func (LookupRouterResultOutput) ExternalNetworkId added in v3.5.0

func (o LookupRouterResultOutput) ExternalNetworkId() pulumi.StringOutput

The network UUID of an external gateway for the router.

func (LookupRouterResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupRouterResultOutput) Name added in v3.5.0

func (LookupRouterResultOutput) Region added in v3.5.0

func (LookupRouterResultOutput) RouterId added in v3.5.0

func (LookupRouterResultOutput) Status added in v3.5.0

func (LookupRouterResultOutput) Tags added in v3.5.0

func (LookupRouterResultOutput) TenantId added in v3.5.0

func (LookupRouterResultOutput) ToLookupRouterResultOutput added in v3.5.0

func (o LookupRouterResultOutput) ToLookupRouterResultOutput() LookupRouterResultOutput

func (LookupRouterResultOutput) ToLookupRouterResultOutputWithContext added in v3.5.0

func (o LookupRouterResultOutput) ToLookupRouterResultOutputWithContext(ctx context.Context) LookupRouterResultOutput

type LookupSecGroupArgs

type LookupSecGroupArgs struct {
	// Human-readable description the the subnet.
	Description *string `pulumi:"description"`
	// The name of the security group.
	Name *string `pulumi:"name"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve security groups ids. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// The ID of the security group.
	SecgroupId *string `pulumi:"secgroupId"`
	// The list of security group tags to filter.
	Tags []string `pulumi:"tags"`
	// The owner of the security group.
	TenantId *string `pulumi:"tenantId"`
}

A collection of arguments for invoking getSecGroup.

type LookupSecGroupOutputArgs added in v3.5.0

type LookupSecGroupOutputArgs struct {
	// Human-readable description the the subnet.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The name of the security group.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve security groups ids. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// The ID of the security group.
	SecgroupId pulumi.StringPtrInput `pulumi:"secgroupId"`
	// The list of security group tags to filter.
	Tags pulumi.StringArrayInput `pulumi:"tags"`
	// The owner of the security group.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
}

A collection of arguments for invoking getSecGroup.

func (LookupSecGroupOutputArgs) ElementType added in v3.5.0

func (LookupSecGroupOutputArgs) ElementType() reflect.Type

type LookupSecGroupResult

type LookupSecGroupResult struct {
	// The set of string tags applied on the security group.
	AllTags []string `pulumi:"allTags"`
	// See Argument Reference above.
	Description *string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// See Argument Reference above.
	Name *string `pulumi:"name"`
	// See Argument Reference above.
	Region     string   `pulumi:"region"`
	SecgroupId *string  `pulumi:"secgroupId"`
	Tags       []string `pulumi:"tags"`
	TenantId   string   `pulumi:"tenantId"`
}

A collection of values returned by getSecGroup.

func LookupSecGroup

func LookupSecGroup(ctx *pulumi.Context, args *LookupSecGroupArgs, opts ...pulumi.InvokeOption) (*LookupSecGroupResult, error)

Use this data source to get the ID of an available OpenStack security group.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupSecGroup(ctx, &networking.LookupSecGroupArgs{
			Name: pulumi.StringRef("tf_test_secgroup"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupSecGroupResultOutput added in v3.5.0

type LookupSecGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSecGroup.

func LookupSecGroupOutput added in v3.5.0

func LookupSecGroupOutput(ctx *pulumi.Context, args LookupSecGroupOutputArgs, opts ...pulumi.InvokeOption) LookupSecGroupResultOutput

func (LookupSecGroupResultOutput) AllTags added in v3.5.0

The set of string tags applied on the security group.

func (LookupSecGroupResultOutput) Description added in v3.5.0

See Argument Reference above.

func (LookupSecGroupResultOutput) ElementType added in v3.5.0

func (LookupSecGroupResultOutput) ElementType() reflect.Type

func (LookupSecGroupResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupSecGroupResultOutput) Name added in v3.5.0

See Argument Reference above.

func (LookupSecGroupResultOutput) Region added in v3.5.0

See Argument Reference above.

func (LookupSecGroupResultOutput) SecgroupId added in v3.5.0

func (LookupSecGroupResultOutput) Tags added in v3.5.0

func (LookupSecGroupResultOutput) TenantId added in v3.5.0

func (LookupSecGroupResultOutput) ToLookupSecGroupResultOutput added in v3.5.0

func (o LookupSecGroupResultOutput) ToLookupSecGroupResultOutput() LookupSecGroupResultOutput

func (LookupSecGroupResultOutput) ToLookupSecGroupResultOutputWithContext added in v3.5.0

func (o LookupSecGroupResultOutput) ToLookupSecGroupResultOutputWithContext(ctx context.Context) LookupSecGroupResultOutput

type LookupSubnetArgs

type LookupSubnetArgs struct {
	// The CIDR of the subnet.
	Cidr *string `pulumi:"cidr"`
	// Human-readable description of the subnet.
	Description *string `pulumi:"description"`
	// Deprecated: use dhcpEnabled instead
	DhcpDisabled *bool `pulumi:"dhcpDisabled"`
	// If the subnet has DHCP enabled.
	DhcpEnabled *bool `pulumi:"dhcpEnabled"`
	// The IP of the subnet's gateway.
	GatewayIp *string `pulumi:"gatewayIp"`
	// The IP version of the subnet (either 4 or 6).
	IpVersion *int `pulumi:"ipVersion"`
	// The IPv6 address mode. Valid values are
	// `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6AddressMode *string `pulumi:"ipv6AddressMode"`
	// The IPv6 Router Advertisement mode. Valid values
	// are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6RaMode *string `pulumi:"ipv6RaMode"`
	// The name of the subnet.
	Name *string `pulumi:"name"`
	// The ID of the network the subnet belongs to.
	NetworkId *string `pulumi:"networkId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve subnet ids. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// The ID of the subnet.
	SubnetId *string `pulumi:"subnetId"`
	// The ID of the subnetpool associated with the subnet.
	SubnetpoolId *string `pulumi:"subnetpoolId"`
	// The list of subnet tags to filter.
	Tags []string `pulumi:"tags"`
	// The owner of the subnet.
	TenantId *string `pulumi:"tenantId"`
}

A collection of arguments for invoking getSubnet.

type LookupSubnetOutputArgs added in v3.5.0

type LookupSubnetOutputArgs struct {
	// The CIDR of the subnet.
	Cidr pulumi.StringPtrInput `pulumi:"cidr"`
	// Human-readable description of the subnet.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Deprecated: use dhcpEnabled instead
	DhcpDisabled pulumi.BoolPtrInput `pulumi:"dhcpDisabled"`
	// If the subnet has DHCP enabled.
	DhcpEnabled pulumi.BoolPtrInput `pulumi:"dhcpEnabled"`
	// The IP of the subnet's gateway.
	GatewayIp pulumi.StringPtrInput `pulumi:"gatewayIp"`
	// The IP version of the subnet (either 4 or 6).
	IpVersion pulumi.IntPtrInput `pulumi:"ipVersion"`
	// The IPv6 address mode. Valid values are
	// `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6AddressMode pulumi.StringPtrInput `pulumi:"ipv6AddressMode"`
	// The IPv6 Router Advertisement mode. Valid values
	// are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6RaMode pulumi.StringPtrInput `pulumi:"ipv6RaMode"`
	// The name of the subnet.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The ID of the network the subnet belongs to.
	NetworkId pulumi.StringPtrInput `pulumi:"networkId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve subnet ids. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// The ID of the subnet.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
	// The ID of the subnetpool associated with the subnet.
	SubnetpoolId pulumi.StringPtrInput `pulumi:"subnetpoolId"`
	// The list of subnet tags to filter.
	Tags pulumi.StringArrayInput `pulumi:"tags"`
	// The owner of the subnet.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
}

A collection of arguments for invoking getSubnet.

func (LookupSubnetOutputArgs) ElementType added in v3.5.0

func (LookupSubnetOutputArgs) ElementType() reflect.Type

type LookupSubnetPoolArgs

type LookupSubnetPoolArgs struct {
	// The Neutron address scope that subnetpools
	// is assigned to.
	AddressScopeId *string `pulumi:"addressScopeId"`
	// The size of the subnetpool default prefix
	// length.
	DefaultPrefixlen *int `pulumi:"defaultPrefixlen"`
	// The per-project quota on the prefix space that
	// can be allocated from the subnetpool for project subnets.
	DefaultQuota *int `pulumi:"defaultQuota"`
	// The human-readable description for the subnetpool.
	Description *string `pulumi:"description"`
	// The IP protocol version.
	IpVersion *int `pulumi:"ipVersion"`
	// Whether the subnetpool is default subnetpool or not.
	IsDefault *bool `pulumi:"isDefault"`
	// The size of the subnetpool max prefix length.
	MaxPrefixlen *int `pulumi:"maxPrefixlen"`
	// The size of the subnetpool min prefix length.
	MinPrefixlen *int `pulumi:"minPrefixlen"`
	// The name of the subnetpool.
	Name *string `pulumi:"name"`
	// The owner of the subnetpool.
	ProjectId *string `pulumi:"projectId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to retrieve a subnetpool id. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// Whether this subnetpool is shared across all projects.
	Shared *bool `pulumi:"shared"`
	// The list of subnetpool tags to filter.
	Tags []string `pulumi:"tags"`
}

A collection of arguments for invoking getSubnetPool.

type LookupSubnetPoolOutputArgs added in v3.5.0

type LookupSubnetPoolOutputArgs struct {
	// The Neutron address scope that subnetpools
	// is assigned to.
	AddressScopeId pulumi.StringPtrInput `pulumi:"addressScopeId"`
	// The size of the subnetpool default prefix
	// length.
	DefaultPrefixlen pulumi.IntPtrInput `pulumi:"defaultPrefixlen"`
	// The per-project quota on the prefix space that
	// can be allocated from the subnetpool for project subnets.
	DefaultQuota pulumi.IntPtrInput `pulumi:"defaultQuota"`
	// The human-readable description for the subnetpool.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The IP protocol version.
	IpVersion pulumi.IntPtrInput `pulumi:"ipVersion"`
	// Whether the subnetpool is default subnetpool or not.
	IsDefault pulumi.BoolPtrInput `pulumi:"isDefault"`
	// The size of the subnetpool max prefix length.
	MaxPrefixlen pulumi.IntPtrInput `pulumi:"maxPrefixlen"`
	// The size of the subnetpool min prefix length.
	MinPrefixlen pulumi.IntPtrInput `pulumi:"minPrefixlen"`
	// The name of the subnetpool.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The owner of the subnetpool.
	ProjectId pulumi.StringPtrInput `pulumi:"projectId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to retrieve a subnetpool id. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// Whether this subnetpool is shared across all projects.
	Shared pulumi.BoolPtrInput `pulumi:"shared"`
	// The list of subnetpool tags to filter.
	Tags pulumi.StringArrayInput `pulumi:"tags"`
}

A collection of arguments for invoking getSubnetPool.

func (LookupSubnetPoolOutputArgs) ElementType added in v3.5.0

func (LookupSubnetPoolOutputArgs) ElementType() reflect.Type

type LookupSubnetPoolResult

type LookupSubnetPoolResult struct {
	// See Argument Reference above.
	AddressScopeId string `pulumi:"addressScopeId"`
	// The set of string tags applied on the subnetpool.
	AllTags []string `pulumi:"allTags"`
	// The time at which subnetpool was created.
	CreatedAt string `pulumi:"createdAt"`
	// See Argument Reference above.
	DefaultPrefixlen int `pulumi:"defaultPrefixlen"`
	// See Argument Reference above.
	DefaultQuota int `pulumi:"defaultQuota"`
	// See Argument Reference above.
	Description string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The IP protocol version.
	IpVersion int `pulumi:"ipVersion"`
	// See Argument Reference above.
	IsDefault bool `pulumi:"isDefault"`
	// See Argument Reference above.
	MaxPrefixlen int `pulumi:"maxPrefixlen"`
	// See Argument Reference above.
	MinPrefixlen int `pulumi:"minPrefixlen"`
	// See Argument Reference above.
	Name string `pulumi:"name"`
	// See Argument Reference above.
	Prefixes []string `pulumi:"prefixes"`
	// See Argument Reference above.
	ProjectId string `pulumi:"projectId"`
	// See Argument Reference above.
	Region string `pulumi:"region"`
	// The revision number of the subnetpool.
	RevisionNumber int `pulumi:"revisionNumber"`
	// See Argument Reference above.
	Shared bool     `pulumi:"shared"`
	Tags   []string `pulumi:"tags"`
	// The time at which subnetpool was created.
	UpdatedAt string `pulumi:"updatedAt"`
}

A collection of values returned by getSubnetPool.

func LookupSubnetPool

func LookupSubnetPool(ctx *pulumi.Context, args *LookupSubnetPoolArgs, opts ...pulumi.InvokeOption) (*LookupSubnetPoolResult, error)

Use this data source to get the ID of an available OpenStack subnetpool.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupSubnetPool(ctx, &networking.LookupSubnetPoolArgs{
			Name: pulumi.StringRef("subnetpool_1"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupSubnetPoolResultOutput added in v3.5.0

type LookupSubnetPoolResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSubnetPool.

func LookupSubnetPoolOutput added in v3.5.0

func (LookupSubnetPoolResultOutput) AddressScopeId added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) AllTags added in v3.5.0

The set of string tags applied on the subnetpool.

func (LookupSubnetPoolResultOutput) CreatedAt added in v3.5.0

The time at which subnetpool was created.

func (LookupSubnetPoolResultOutput) DefaultPrefixlen added in v3.5.0

func (o LookupSubnetPoolResultOutput) DefaultPrefixlen() pulumi.IntOutput

See Argument Reference above.

func (LookupSubnetPoolResultOutput) DefaultQuota added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) Description added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) ElementType added in v3.5.0

func (LookupSubnetPoolResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupSubnetPoolResultOutput) IpVersion added in v3.5.0

The IP protocol version.

func (LookupSubnetPoolResultOutput) IsDefault added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) MaxPrefixlen added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) MinPrefixlen added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) Name added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) Prefixes added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) ProjectId added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) Region added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) RevisionNumber added in v3.5.0

func (o LookupSubnetPoolResultOutput) RevisionNumber() pulumi.IntOutput

The revision number of the subnetpool.

func (LookupSubnetPoolResultOutput) Shared added in v3.5.0

See Argument Reference above.

func (LookupSubnetPoolResultOutput) Tags added in v3.5.0

func (LookupSubnetPoolResultOutput) ToLookupSubnetPoolResultOutput added in v3.5.0

func (o LookupSubnetPoolResultOutput) ToLookupSubnetPoolResultOutput() LookupSubnetPoolResultOutput

func (LookupSubnetPoolResultOutput) ToLookupSubnetPoolResultOutputWithContext added in v3.5.0

func (o LookupSubnetPoolResultOutput) ToLookupSubnetPoolResultOutputWithContext(ctx context.Context) LookupSubnetPoolResultOutput

func (LookupSubnetPoolResultOutput) UpdatedAt added in v3.5.0

The time at which subnetpool was created.

type LookupSubnetResult

type LookupSubnetResult struct {
	// A set of string tags applied on the subnet.
	AllTags []string `pulumi:"allTags"`
	// Allocation pools of the subnet.
	AllocationPools []GetSubnetAllocationPool `pulumi:"allocationPools"`
	Cidr            string                    `pulumi:"cidr"`
	Description     string                    `pulumi:"description"`
	// Deprecated: use dhcpEnabled instead
	DhcpDisabled *bool `pulumi:"dhcpDisabled"`
	DhcpEnabled  *bool `pulumi:"dhcpEnabled"`
	// DNS Nameservers of the subnet.
	DnsNameservers []string `pulumi:"dnsNameservers"`
	// Whether the subnet has DHCP enabled or not.
	EnableDhcp bool   `pulumi:"enableDhcp"`
	GatewayIp  string `pulumi:"gatewayIp"`
	// Host Routes of the subnet.
	HostRoutes []GetSubnetHostRoute `pulumi:"hostRoutes"`
	// The provider-assigned unique ID for this managed resource.
	Id              string `pulumi:"id"`
	IpVersion       int    `pulumi:"ipVersion"`
	Ipv6AddressMode string `pulumi:"ipv6AddressMode"`
	Ipv6RaMode      string `pulumi:"ipv6RaMode"`
	Name            string `pulumi:"name"`
	NetworkId       string `pulumi:"networkId"`
	// See Argument Reference above.
	Region string `pulumi:"region"`
	// Service types of the subnet.
	ServiceTypes []string `pulumi:"serviceTypes"`
	SubnetId     string   `pulumi:"subnetId"`
	SubnetpoolId string   `pulumi:"subnetpoolId"`
	Tags         []string `pulumi:"tags"`
	TenantId     string   `pulumi:"tenantId"`
}

A collection of values returned by getSubnet.

func LookupSubnet

func LookupSubnet(ctx *pulumi.Context, args *LookupSubnetArgs, opts ...pulumi.InvokeOption) (*LookupSubnetResult, error)

Use this data source to get the ID of an available OpenStack subnet.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupSubnet(ctx, &networking.LookupSubnetArgs{
			Name: pulumi.StringRef("subnet_1"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupSubnetResultOutput added in v3.5.0

type LookupSubnetResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSubnet.

func LookupSubnetOutput added in v3.5.0

func LookupSubnetOutput(ctx *pulumi.Context, args LookupSubnetOutputArgs, opts ...pulumi.InvokeOption) LookupSubnetResultOutput

func (LookupSubnetResultOutput) AllTags added in v3.5.0

A set of string tags applied on the subnet.

func (LookupSubnetResultOutput) AllocationPools added in v3.5.0

Allocation pools of the subnet.

func (LookupSubnetResultOutput) Cidr added in v3.5.0

func (LookupSubnetResultOutput) Description added in v3.5.0

func (LookupSubnetResultOutput) DhcpDisabled deprecated added in v3.5.0

Deprecated: use dhcpEnabled instead

func (LookupSubnetResultOutput) DhcpEnabled added in v3.5.0

func (LookupSubnetResultOutput) DnsNameservers added in v3.5.0

DNS Nameservers of the subnet.

func (LookupSubnetResultOutput) ElementType added in v3.5.0

func (LookupSubnetResultOutput) ElementType() reflect.Type

func (LookupSubnetResultOutput) EnableDhcp added in v3.5.0

Whether the subnet has DHCP enabled or not.

func (LookupSubnetResultOutput) GatewayIp added in v3.5.0

func (LookupSubnetResultOutput) HostRoutes added in v3.5.0

Host Routes of the subnet.

func (LookupSubnetResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupSubnetResultOutput) IpVersion added in v3.5.0

func (LookupSubnetResultOutput) Ipv6AddressMode added in v3.5.0

func (o LookupSubnetResultOutput) Ipv6AddressMode() pulumi.StringOutput

func (LookupSubnetResultOutput) Ipv6RaMode added in v3.5.0

func (LookupSubnetResultOutput) Name added in v3.5.0

func (LookupSubnetResultOutput) NetworkId added in v3.5.0

func (LookupSubnetResultOutput) Region added in v3.5.0

See Argument Reference above.

func (LookupSubnetResultOutput) ServiceTypes added in v3.11.0

Service types of the subnet.

func (LookupSubnetResultOutput) SubnetId added in v3.5.0

func (LookupSubnetResultOutput) SubnetpoolId added in v3.5.0

func (o LookupSubnetResultOutput) SubnetpoolId() pulumi.StringOutput

func (LookupSubnetResultOutput) Tags added in v3.5.0

func (LookupSubnetResultOutput) TenantId added in v3.5.0

func (LookupSubnetResultOutput) ToLookupSubnetResultOutput added in v3.5.0

func (o LookupSubnetResultOutput) ToLookupSubnetResultOutput() LookupSubnetResultOutput

func (LookupSubnetResultOutput) ToLookupSubnetResultOutputWithContext added in v3.5.0

func (o LookupSubnetResultOutput) ToLookupSubnetResultOutputWithContext(ctx context.Context) LookupSubnetResultOutput

type LookupTrunkArgs

type LookupTrunkArgs struct {
	// The administrative state of the trunk.
	AdminStateUp *bool `pulumi:"adminStateUp"`
	// Human-readable description of the trunk.
	Description *string `pulumi:"description"`
	// The name of the trunk.
	Name *string `pulumi:"name"`
	// The ID of the trunk parent port.
	PortId *string `pulumi:"portId"`
	// The owner of the trunk.
	ProjectId *string `pulumi:"projectId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve trunk ids. If omitted, the
	// `region` argument of the provider is used.
	Region *string `pulumi:"region"`
	// The status of the trunk.
	Status *string `pulumi:"status"`
	// The list of trunk tags to filter.
	Tags []string `pulumi:"tags"`
	// The ID of the trunk.
	TrunkId *string `pulumi:"trunkId"`
}

A collection of arguments for invoking getTrunk.

type LookupTrunkOutputArgs added in v3.5.0

type LookupTrunkOutputArgs struct {
	// The administrative state of the trunk.
	AdminStateUp pulumi.BoolPtrInput `pulumi:"adminStateUp"`
	// Human-readable description of the trunk.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The name of the trunk.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// The ID of the trunk parent port.
	PortId pulumi.StringPtrInput `pulumi:"portId"`
	// The owner of the trunk.
	ProjectId pulumi.StringPtrInput `pulumi:"projectId"`
	// The region in which to obtain the V2 Neutron client.
	// A Neutron client is needed to retrieve trunk ids. If omitted, the
	// `region` argument of the provider is used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// The status of the trunk.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// The list of trunk tags to filter.
	Tags pulumi.StringArrayInput `pulumi:"tags"`
	// The ID of the trunk.
	TrunkId pulumi.StringPtrInput `pulumi:"trunkId"`
}

A collection of arguments for invoking getTrunk.

func (LookupTrunkOutputArgs) ElementType added in v3.5.0

func (LookupTrunkOutputArgs) ElementType() reflect.Type

type LookupTrunkResult

type LookupTrunkResult struct {
	AdminStateUp *bool `pulumi:"adminStateUp"`
	// The set of string tags applied on the trunk.
	AllTags     []string `pulumi:"allTags"`
	Description *string  `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id   string  `pulumi:"id"`
	Name *string `pulumi:"name"`
	// The ID of the trunk subport.
	PortId    *string `pulumi:"portId"`
	ProjectId string  `pulumi:"projectId"`
	Region    string  `pulumi:"region"`
	Status    *string `pulumi:"status"`
	// The set of the trunk subports. The structure of each subport is
	// described below.
	SubPorts []GetTrunkSubPort `pulumi:"subPorts"`
	Tags     []string          `pulumi:"tags"`
	TrunkId  *string           `pulumi:"trunkId"`
}

A collection of values returned by getTrunk.

func LookupTrunk

func LookupTrunk(ctx *pulumi.Context, args *LookupTrunkArgs, opts ...pulumi.InvokeOption) (*LookupTrunkResult, error)

Use this data source to get the ID of an available OpenStack trunk.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.LookupTrunk(ctx, &networking.LookupTrunkArgs{
			Name: pulumi.StringRef("trunk_1"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupTrunkResultOutput added in v3.5.0

type LookupTrunkResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getTrunk.

func LookupTrunkOutput added in v3.5.0

func LookupTrunkOutput(ctx *pulumi.Context, args LookupTrunkOutputArgs, opts ...pulumi.InvokeOption) LookupTrunkResultOutput

func (LookupTrunkResultOutput) AdminStateUp added in v3.5.0

func (o LookupTrunkResultOutput) AdminStateUp() pulumi.BoolPtrOutput

func (LookupTrunkResultOutput) AllTags added in v3.5.0

The set of string tags applied on the trunk.

func (LookupTrunkResultOutput) Description added in v3.5.0

func (LookupTrunkResultOutput) ElementType added in v3.5.0

func (LookupTrunkResultOutput) ElementType() reflect.Type

func (LookupTrunkResultOutput) Id added in v3.5.0

The provider-assigned unique ID for this managed resource.

func (LookupTrunkResultOutput) Name added in v3.5.0

func (LookupTrunkResultOutput) PortId added in v3.5.0

The ID of the trunk subport.

func (LookupTrunkResultOutput) ProjectId added in v3.5.0

func (LookupTrunkResultOutput) Region added in v3.5.0

func (LookupTrunkResultOutput) Status added in v3.5.0

func (LookupTrunkResultOutput) SubPorts added in v3.5.0

The set of the trunk subports. The structure of each subport is described below.

func (LookupTrunkResultOutput) Tags added in v3.5.0

func (LookupTrunkResultOutput) ToLookupTrunkResultOutput added in v3.5.0

func (o LookupTrunkResultOutput) ToLookupTrunkResultOutput() LookupTrunkResultOutput

func (LookupTrunkResultOutput) ToLookupTrunkResultOutputWithContext added in v3.5.0

func (o LookupTrunkResultOutput) ToLookupTrunkResultOutputWithContext(ctx context.Context) LookupTrunkResultOutput

func (LookupTrunkResultOutput) TrunkId added in v3.5.0

type Network

type Network struct {
	pulumi.CustomResourceState

	// The administrative state of the network.
	// Acceptable values are "true" and "false". Changing this value updates the
	// state of the existing network.
	AdminStateUp pulumi.BoolOutput `pulumi:"adminStateUp"`
	// The collection of tags assigned on the network, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayOutput `pulumi:"allTags"`
	// An availability zone is used to make
	// network resources highly available. Used for resources with high availability
	// so that they are scheduled on different availability zones. Changing this
	// creates a new network.
	AvailabilityZoneHints pulumi.StringArrayOutput `pulumi:"availabilityZoneHints"`
	// Human-readable description of the network. Changing this
	// updates the name of the existing network.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The network DNS domain. Available, when Neutron DNS
	// extension is enabled. The `dnsDomain` of a network in conjunction with the
	// `dnsName` attribute of its ports will be published in an external DNS
	// service when Neutron is configured to integrate with such a service.
	DnsDomain pulumi.StringOutput `pulumi:"dnsDomain"`
	// Specifies whether the network resource has the
	// external routing facility. Valid values are true and false. Defaults to
	// false. Changing this updates the external attribute of the existing network.
	External pulumi.BoolOutput `pulumi:"external"`
	// The network MTU. Available for read-only, when Neutron
	// `net-mtu` extension is enabled. Available for the modification, when
	// Neutron `net-mtu-writable` extension is enabled.
	Mtu pulumi.IntOutput `pulumi:"mtu"`
	// The name of the network. Changing this updates the name of
	// the existing network.
	Name pulumi.StringOutput `pulumi:"name"`
	// Whether to explicitly enable or disable
	// port security on the network. Port Security is usually enabled by default, so
	// omitting this argument will usually result in a value of "true". Setting this
	// explicitly to `false` will disable port security. Valid values are `true` and
	// `false`.
	PortSecurityEnabled pulumi.BoolOutput `pulumi:"portSecurityEnabled"`
	// Reference to the associated QoS policy.
	QosPolicyId pulumi.StringOutput `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron network. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// network.
	Region pulumi.StringOutput `pulumi:"region"`
	// An array of one or more provider segment objects.
	// Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support
	// updating any provider related segments attributes. Check your plug-in whether
	// it supports updating.
	Segments NetworkSegmentArrayOutput `pulumi:"segments"`
	// Specifies whether the network resource can be accessed
	// by any tenant or not. Changing this updates the sharing capabilities of the
	// existing network.
	Shared pulumi.BoolOutput `pulumi:"shared"`
	// A set of string tags for the network.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// The owner of the network. Required if admin wants to
	// create a network for another tenant. Changing this creates a new network.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
	// Specifies whether the network resource has the
	// VLAN transparent attribute set. Valid values are true and false. Defaults to
	// false. Changing this updates the `transparentVlan` attribute of the existing
	// network.
	TransparentVlan pulumi.BoolOutput `pulumi:"transparentVlan"`
	// Map of additional options.
	ValueSpecs pulumi.MapOutput `pulumi:"valueSpecs"`
}

Manages a V2 Neutron network resource within OpenStack.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/compute"
"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		subnet1, err := networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{
			NetworkId: network1.ID(),
			Cidr:      pulumi.String("192.168.199.0/24"),
			IpVersion: pulumi.Int(4),
		})
		if err != nil {
			return err
		}
		secgroup1, err := compute.NewSecGroup(ctx, "secgroup1", &compute.SecGroupArgs{
			Description: pulumi.String("a security group"),
			Rules: compute.SecGroupRuleArray{
				&compute.SecGroupRuleArgs{
					FromPort:   pulumi.Int(22),
					ToPort:     pulumi.Int(22),
					IpProtocol: pulumi.String("tcp"),
					Cidr:       pulumi.String("0.0.0.0/0"),
				},
			},
		})
		if err != nil {
			return err
		}
		port1, err := networking.NewPort(ctx, "port1", &networking.PortArgs{
			NetworkId:    network1.ID(),
			AdminStateUp: pulumi.Bool(true),
			SecurityGroupIds: pulumi.StringArray{
				secgroup1.ID(),
			},
			FixedIps: networking.PortFixedIpArray{
				&networking.PortFixedIpArgs{
					SubnetId:  subnet1.ID(),
					IpAddress: pulumi.String("192.168.199.10"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewInstance(ctx, "instance1", &compute.InstanceArgs{
			SecurityGroups: pulumi.StringArray{
				secgroup1.Name,
			},
			Networks: compute.InstanceNetworkArray{
				&compute.InstanceNetworkArgs{
					Port: port1.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Networks can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/network:Network network_1 d90ce693-5ccf-4136-a0ed-152ce412b6b9 ```

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

type NetworkArgs

type NetworkArgs struct {
	// The administrative state of the network.
	// Acceptable values are "true" and "false". Changing this value updates the
	// state of the existing network.
	AdminStateUp pulumi.BoolPtrInput
	// An availability zone is used to make
	// network resources highly available. Used for resources with high availability
	// so that they are scheduled on different availability zones. Changing this
	// creates a new network.
	AvailabilityZoneHints pulumi.StringArrayInput
	// Human-readable description of the network. Changing this
	// updates the name of the existing network.
	Description pulumi.StringPtrInput
	// The network DNS domain. Available, when Neutron DNS
	// extension is enabled. The `dnsDomain` of a network in conjunction with the
	// `dnsName` attribute of its ports will be published in an external DNS
	// service when Neutron is configured to integrate with such a service.
	DnsDomain pulumi.StringPtrInput
	// Specifies whether the network resource has the
	// external routing facility. Valid values are true and false. Defaults to
	// false. Changing this updates the external attribute of the existing network.
	External pulumi.BoolPtrInput
	// The network MTU. Available for read-only, when Neutron
	// `net-mtu` extension is enabled. Available for the modification, when
	// Neutron `net-mtu-writable` extension is enabled.
	Mtu pulumi.IntPtrInput
	// The name of the network. Changing this updates the name of
	// the existing network.
	Name pulumi.StringPtrInput
	// Whether to explicitly enable or disable
	// port security on the network. Port Security is usually enabled by default, so
	// omitting this argument will usually result in a value of "true". Setting this
	// explicitly to `false` will disable port security. Valid values are `true` and
	// `false`.
	PortSecurityEnabled pulumi.BoolPtrInput
	// Reference to the associated QoS policy.
	QosPolicyId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron network. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// network.
	Region pulumi.StringPtrInput
	// An array of one or more provider segment objects.
	// Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support
	// updating any provider related segments attributes. Check your plug-in whether
	// it supports updating.
	Segments NetworkSegmentArrayInput
	// Specifies whether the network resource can be accessed
	// by any tenant or not. Changing this updates the sharing capabilities of the
	// existing network.
	Shared pulumi.BoolPtrInput
	// A set of string tags for the network.
	Tags pulumi.StringArrayInput
	// The owner of the network. Required if admin wants to
	// create a network for another tenant. Changing this creates a new network.
	TenantId pulumi.StringPtrInput
	// Specifies whether the network resource has the
	// VLAN transparent attribute set. Valid values are true and false. Defaults to
	// false. Changing this updates the `transparentVlan` attribute of the existing
	// network.
	TransparentVlan pulumi.BoolPtrInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

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

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

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

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

type NetworkOutput

type NetworkOutput struct{ *pulumi.OutputState }

func (NetworkOutput) AdminStateUp added in v3.9.0

func (o NetworkOutput) AdminStateUp() pulumi.BoolOutput

The administrative state of the network. Acceptable values are "true" and "false". Changing this value updates the state of the existing network.

func (NetworkOutput) AllTags added in v3.9.0

The collection of tags assigned on the network, which have been explicitly and implicitly added.

func (NetworkOutput) AvailabilityZoneHints added in v3.9.0

func (o NetworkOutput) AvailabilityZoneHints() pulumi.StringArrayOutput

An availability zone is used to make network resources highly available. Used for resources with high availability so that they are scheduled on different availability zones. Changing this creates a new network.

func (NetworkOutput) Description added in v3.9.0

func (o NetworkOutput) Description() pulumi.StringPtrOutput

Human-readable description of the network. Changing this updates the name of the existing network.

func (NetworkOutput) DnsDomain added in v3.9.0

func (o NetworkOutput) DnsDomain() pulumi.StringOutput

The network DNS domain. Available, when Neutron DNS extension is enabled. The `dnsDomain` of a network in conjunction with the `dnsName` attribute of its ports will be published in an external DNS service when Neutron is configured to integrate with such a service.

func (NetworkOutput) ElementType

func (NetworkOutput) ElementType() reflect.Type

func (NetworkOutput) External added in v3.9.0

func (o NetworkOutput) External() pulumi.BoolOutput

Specifies whether the network resource has the external routing facility. Valid values are true and false. Defaults to false. Changing this updates the external attribute of the existing network.

func (NetworkOutput) Mtu added in v3.9.0

func (o NetworkOutput) Mtu() pulumi.IntOutput

The network MTU. Available for read-only, when Neutron `net-mtu` extension is enabled. Available for the modification, when Neutron `net-mtu-writable` extension is enabled.

func (NetworkOutput) Name added in v3.9.0

The name of the network. Changing this updates the name of the existing network.

func (NetworkOutput) PortSecurityEnabled added in v3.9.0

func (o NetworkOutput) PortSecurityEnabled() pulumi.BoolOutput

Whether to explicitly enable or disable port security on the network. Port Security is usually enabled by default, so omitting this argument will usually result in a value of "true". Setting this explicitly to `false` will disable port security. Valid values are `true` and `false`.

func (NetworkOutput) QosPolicyId added in v3.9.0

func (o NetworkOutput) QosPolicyId() pulumi.StringOutput

Reference to the associated QoS policy.

func (NetworkOutput) Region added in v3.9.0

func (o NetworkOutput) Region() pulumi.StringOutput

The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron network. If omitted, the `region` argument of the provider is used. Changing this creates a new network.

func (NetworkOutput) Segments added in v3.9.0

An array of one or more provider segment objects. Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support updating any provider related segments attributes. Check your plug-in whether it supports updating.

func (NetworkOutput) Shared added in v3.9.0

func (o NetworkOutput) Shared() pulumi.BoolOutput

Specifies whether the network resource can be accessed by any tenant or not. Changing this updates the sharing capabilities of the existing network.

func (NetworkOutput) Tags added in v3.9.0

A set of string tags for the network.

func (NetworkOutput) TenantId added in v3.9.0

func (o NetworkOutput) TenantId() pulumi.StringOutput

The owner of the network. Required if admin wants to create a network for another tenant. Changing this creates a new network.

func (NetworkOutput) ToNetworkOutput

func (o NetworkOutput) ToNetworkOutput() NetworkOutput

func (NetworkOutput) ToNetworkOutputWithContext

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

func (NetworkOutput) TransparentVlan added in v3.9.0

func (o NetworkOutput) TransparentVlan() pulumi.BoolOutput

Specifies whether the network resource has the VLAN transparent attribute set. Valid values are true and false. Defaults to false. Changing this updates the `transparentVlan` attribute of the existing network.

func (NetworkOutput) ValueSpecs added in v3.9.0

func (o NetworkOutput) ValueSpecs() pulumi.MapOutput

Map of additional options.

type NetworkSegment

type NetworkSegment struct {
	// The type of physical network.
	NetworkType *string `pulumi:"networkType"`
	// The physical network where this network is implemented.
	PhysicalNetwork *string `pulumi:"physicalNetwork"`
	// An isolated segment on the physical network.
	SegmentationId *int `pulumi:"segmentationId"`
}

type NetworkSegmentArgs

type NetworkSegmentArgs struct {
	// The type of physical network.
	NetworkType pulumi.StringPtrInput `pulumi:"networkType"`
	// The physical network where this network is implemented.
	PhysicalNetwork pulumi.StringPtrInput `pulumi:"physicalNetwork"`
	// An isolated segment on the physical network.
	SegmentationId pulumi.IntPtrInput `pulumi:"segmentationId"`
}

func (NetworkSegmentArgs) ElementType

func (NetworkSegmentArgs) ElementType() reflect.Type

func (NetworkSegmentArgs) ToNetworkSegmentOutput

func (i NetworkSegmentArgs) ToNetworkSegmentOutput() NetworkSegmentOutput

func (NetworkSegmentArgs) ToNetworkSegmentOutputWithContext

func (i NetworkSegmentArgs) ToNetworkSegmentOutputWithContext(ctx context.Context) NetworkSegmentOutput

type NetworkSegmentArray

type NetworkSegmentArray []NetworkSegmentInput

func (NetworkSegmentArray) ElementType

func (NetworkSegmentArray) ElementType() reflect.Type

func (NetworkSegmentArray) ToNetworkSegmentArrayOutput

func (i NetworkSegmentArray) ToNetworkSegmentArrayOutput() NetworkSegmentArrayOutput

func (NetworkSegmentArray) ToNetworkSegmentArrayOutputWithContext

func (i NetworkSegmentArray) ToNetworkSegmentArrayOutputWithContext(ctx context.Context) NetworkSegmentArrayOutput

type NetworkSegmentArrayInput

type NetworkSegmentArrayInput interface {
	pulumi.Input

	ToNetworkSegmentArrayOutput() NetworkSegmentArrayOutput
	ToNetworkSegmentArrayOutputWithContext(context.Context) NetworkSegmentArrayOutput
}

NetworkSegmentArrayInput is an input type that accepts NetworkSegmentArray and NetworkSegmentArrayOutput values. You can construct a concrete instance of `NetworkSegmentArrayInput` via:

NetworkSegmentArray{ NetworkSegmentArgs{...} }

type NetworkSegmentArrayOutput

type NetworkSegmentArrayOutput struct{ *pulumi.OutputState }

func (NetworkSegmentArrayOutput) ElementType

func (NetworkSegmentArrayOutput) ElementType() reflect.Type

func (NetworkSegmentArrayOutput) Index

func (NetworkSegmentArrayOutput) ToNetworkSegmentArrayOutput

func (o NetworkSegmentArrayOutput) ToNetworkSegmentArrayOutput() NetworkSegmentArrayOutput

func (NetworkSegmentArrayOutput) ToNetworkSegmentArrayOutputWithContext

func (o NetworkSegmentArrayOutput) ToNetworkSegmentArrayOutputWithContext(ctx context.Context) NetworkSegmentArrayOutput

type NetworkSegmentInput

type NetworkSegmentInput interface {
	pulumi.Input

	ToNetworkSegmentOutput() NetworkSegmentOutput
	ToNetworkSegmentOutputWithContext(context.Context) NetworkSegmentOutput
}

NetworkSegmentInput is an input type that accepts NetworkSegmentArgs and NetworkSegmentOutput values. You can construct a concrete instance of `NetworkSegmentInput` via:

NetworkSegmentArgs{...}

type NetworkSegmentOutput

type NetworkSegmentOutput struct{ *pulumi.OutputState }

func (NetworkSegmentOutput) ElementType

func (NetworkSegmentOutput) ElementType() reflect.Type

func (NetworkSegmentOutput) NetworkType

The type of physical network.

func (NetworkSegmentOutput) PhysicalNetwork

func (o NetworkSegmentOutput) PhysicalNetwork() pulumi.StringPtrOutput

The physical network where this network is implemented.

func (NetworkSegmentOutput) SegmentationId

func (o NetworkSegmentOutput) SegmentationId() pulumi.IntPtrOutput

An isolated segment on the physical network.

func (NetworkSegmentOutput) ToNetworkSegmentOutput

func (o NetworkSegmentOutput) ToNetworkSegmentOutput() NetworkSegmentOutput

func (NetworkSegmentOutput) ToNetworkSegmentOutputWithContext

func (o NetworkSegmentOutput) ToNetworkSegmentOutputWithContext(ctx context.Context) NetworkSegmentOutput

type NetworkState

type NetworkState struct {
	// The administrative state of the network.
	// Acceptable values are "true" and "false". Changing this value updates the
	// state of the existing network.
	AdminStateUp pulumi.BoolPtrInput
	// The collection of tags assigned on the network, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayInput
	// An availability zone is used to make
	// network resources highly available. Used for resources with high availability
	// so that they are scheduled on different availability zones. Changing this
	// creates a new network.
	AvailabilityZoneHints pulumi.StringArrayInput
	// Human-readable description of the network. Changing this
	// updates the name of the existing network.
	Description pulumi.StringPtrInput
	// The network DNS domain. Available, when Neutron DNS
	// extension is enabled. The `dnsDomain` of a network in conjunction with the
	// `dnsName` attribute of its ports will be published in an external DNS
	// service when Neutron is configured to integrate with such a service.
	DnsDomain pulumi.StringPtrInput
	// Specifies whether the network resource has the
	// external routing facility. Valid values are true and false. Defaults to
	// false. Changing this updates the external attribute of the existing network.
	External pulumi.BoolPtrInput
	// The network MTU. Available for read-only, when Neutron
	// `net-mtu` extension is enabled. Available for the modification, when
	// Neutron `net-mtu-writable` extension is enabled.
	Mtu pulumi.IntPtrInput
	// The name of the network. Changing this updates the name of
	// the existing network.
	Name pulumi.StringPtrInput
	// Whether to explicitly enable or disable
	// port security on the network. Port Security is usually enabled by default, so
	// omitting this argument will usually result in a value of "true". Setting this
	// explicitly to `false` will disable port security. Valid values are `true` and
	// `false`.
	PortSecurityEnabled pulumi.BoolPtrInput
	// Reference to the associated QoS policy.
	QosPolicyId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron network. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// network.
	Region pulumi.StringPtrInput
	// An array of one or more provider segment objects.
	// Note: most Networking plug-ins (e.g. ML2 Plugin) and drivers do not support
	// updating any provider related segments attributes. Check your plug-in whether
	// it supports updating.
	Segments NetworkSegmentArrayInput
	// Specifies whether the network resource can be accessed
	// by any tenant or not. Changing this updates the sharing capabilities of the
	// existing network.
	Shared pulumi.BoolPtrInput
	// A set of string tags for the network.
	Tags pulumi.StringArrayInput
	// The owner of the network. Required if admin wants to
	// create a network for another tenant. Changing this creates a new network.
	TenantId pulumi.StringPtrInput
	// Specifies whether the network resource has the
	// VLAN transparent attribute set. Valid values are true and false. Defaults to
	// false. Changing this updates the `transparentVlan` attribute of the existing
	// network.
	TransparentVlan pulumi.BoolPtrInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

func (NetworkState) ElementType

func (NetworkState) ElementType() reflect.Type

type Port

type Port struct {
	pulumi.CustomResourceState

	// Administrative up/down status for the port
	// (must be `true` or `false` if provided). Changing this updates the
	// `adminStateUp` of an existing port.
	AdminStateUp pulumi.BoolOutput `pulumi:"adminStateUp"`
	// The collection of Fixed IP addresses on the port in the
	// order returned by the Network v2 API.
	AllFixedIps pulumi.StringArrayOutput `pulumi:"allFixedIps"`
	// The collection of Security Group IDs on the port
	// which have been explicitly and implicitly added.
	AllSecurityGroupIds pulumi.StringArrayOutput `pulumi:"allSecurityGroupIds"`
	// The collection of tags assigned on the port, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayOutput `pulumi:"allTags"`
	// An IP/MAC Address pair of additional IP
	// addresses that can be active on this port. The structure is described
	// below.
	AllowedAddressPairs PortAllowedAddressPairArrayOutput `pulumi:"allowedAddressPairs"`
	// The port binding allows to specify binding information
	// for the port. The structure is described below.
	Binding PortBindingOutput `pulumi:"binding"`
	// Human-readable description of the port. Changing
	// this updates the `description` of an existing port.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The ID of the device attached to the port. Changing this
	// creates a new port.
	DeviceId pulumi.StringOutput `pulumi:"deviceId"`
	// The device owner of the port. Changing this creates
	// a new port.
	DeviceOwner pulumi.StringOutput `pulumi:"deviceOwner"`
	// The list of maps representing port DNS assignments.
	DnsAssignments pulumi.MapArrayOutput `pulumi:"dnsAssignments"`
	// The port DNS name. Available, when Neutron DNS extension
	// is enabled.
	DnsName pulumi.StringOutput `pulumi:"dnsName"`
	// An extra DHCP option that needs to be configured
	// on the port. The structure is described below. Can be specified multiple
	// times.
	ExtraDhcpOptions PortExtraDhcpOptionArrayOutput `pulumi:"extraDhcpOptions"`
	// An array of desired IPs for
	// this port. The structure is described below.
	FixedIps PortFixedIpArrayOutput `pulumi:"fixedIps"`
	// Specify a specific MAC address for the port. Changing
	// this creates a new port.
	MacAddress pulumi.StringOutput `pulumi:"macAddress"`
	// A unique name for the port. Changing this
	// updates the `name` of an existing port.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the network to attach the port to. Changing
	// this creates a new port.
	NetworkId pulumi.StringOutput `pulumi:"networkId"`
	// Create a port with no fixed
	// IP address. This will also remove any fixed IPs previously set on a port. `true`
	// is the only valid value for this argument.
	NoFixedIp pulumi.BoolPtrOutput `pulumi:"noFixedIp"`
	// If set to
	// `true`, then no security groups are applied to the port. If set to `false` and
	// no `securityGroupIds` are specified, then the port will yield to the default
	// behavior of the Networking service, which is to usually apply the "default"
	// security group.
	NoSecurityGroups pulumi.BoolPtrOutput `pulumi:"noSecurityGroups"`
	// Whether to explicitly enable or disable
	// port security on the port. Port Security is usually enabled by default, so
	// omitting argument will usually result in a value of `true`. Setting this
	// explicitly to `false` will disable port security. In order to disable port
	// security, the port must not have any security groups. Valid values are `true`
	// and `false`.
	PortSecurityEnabled pulumi.BoolOutput `pulumi:"portSecurityEnabled"`
	// Reference to the associated QoS policy.
	QosPolicyId pulumi.StringOutput `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// port.
	Region pulumi.StringOutput `pulumi:"region"`
	// A list
	// of security group IDs to apply to the port. The security groups must be
	// specified by ID and not name (as opposed to how they are configured with
	// the Compute Instance).
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	// A set of string tags for the port.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// The owner of the port. Required if admin wants
	// to create a port for another tenant. Changing this creates a new port.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
	// Map of additional options.
	ValueSpecs pulumi.MapOutput `pulumi:"valueSpecs"`
}

Manages a V2 port resource within OpenStack.

> **Note:** Ports do not get an IP if the network they are attached to does not have a subnet. If you create the subnet resource in the same run as the port, make sure to use `fixed_ip.subnet_id` or `dependsOn` to enforce the subnet resource creation before the port creation is triggered. More info here

## Example Usage

### Simple port

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewPort(ctx, "port1", &networking.PortArgs{
			NetworkId:    network1.ID(),
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

### Port defining fixed_ip.subnet_id

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		subnet1, err := networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{
			NetworkId: network1.ID(),
			Cidr:      pulumi.String("192.168.199.0/24"),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewPort(ctx, "port1", &networking.PortArgs{
			NetworkId:    network1.ID(),
			AdminStateUp: pulumi.Bool(true),
			FixedIps: networking.PortFixedIpArray{
				&networking.PortFixedIpArgs{
					SubnetId: subnet1.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

### Port with physical binding information

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewPort(ctx, "port1", &networking.PortArgs{
			NetworkId:    network1.ID(),
			DeviceId:     pulumi.String("cdf70fcf-c161-4f24-9c70-96b3f5a54b71"),
			DeviceOwner:  pulumi.String("baremetal:none"),
			AdminStateUp: pulumi.Bool(true),
			Binding: &networking.PortBindingArgs{
				HostId:   pulumi.String("b080b9cf-46e0-4ce8-ad47-0fd4accc872b"),
				VnicType: pulumi.String("baremetal"),
				Profile: pulumi.String(`{
  "local_link_information": [
    {
      "switch_info": "info1",
      "port_id": "Ethernet3/4",
      "switch_id": "12:34:56:78:9A:BC"
    },
    {
      "switch_info": "info2",
      "port_id": "Ethernet3/4",
      "switch_id": "12:34:56:78:9A:BD"
    }
  ],
  "vlan_type": "allowed"
}

`),

			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Notes

### Ports and Instances

There are some notes to consider when connecting Instances to networks using Ports. Please see the `compute.Instance` documentation for further documentation.

## Import

Ports can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/port:Port port_1 eae26a3e-1c33-4cc1-9c31-0cd729c438a1 ```

func GetPort

func GetPort(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PortState, opts ...pulumi.ResourceOption) (*Port, error)

GetPort gets an existing Port 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 NewPort

func NewPort(ctx *pulumi.Context,
	name string, args *PortArgs, opts ...pulumi.ResourceOption) (*Port, error)

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

func (*Port) ElementType

func (*Port) ElementType() reflect.Type

func (*Port) ToPortOutput

func (i *Port) ToPortOutput() PortOutput

func (*Port) ToPortOutputWithContext

func (i *Port) ToPortOutputWithContext(ctx context.Context) PortOutput

type PortAllowedAddressPair

type PortAllowedAddressPair struct {
	// The additional IP address.
	IpAddress string `pulumi:"ipAddress"`
	// The additional MAC address.
	MacAddress *string `pulumi:"macAddress"`
}

type PortAllowedAddressPairArgs

type PortAllowedAddressPairArgs struct {
	// The additional IP address.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// The additional MAC address.
	MacAddress pulumi.StringPtrInput `pulumi:"macAddress"`
}

func (PortAllowedAddressPairArgs) ElementType

func (PortAllowedAddressPairArgs) ElementType() reflect.Type

func (PortAllowedAddressPairArgs) ToPortAllowedAddressPairOutput

func (i PortAllowedAddressPairArgs) ToPortAllowedAddressPairOutput() PortAllowedAddressPairOutput

func (PortAllowedAddressPairArgs) ToPortAllowedAddressPairOutputWithContext

func (i PortAllowedAddressPairArgs) ToPortAllowedAddressPairOutputWithContext(ctx context.Context) PortAllowedAddressPairOutput

type PortAllowedAddressPairArray

type PortAllowedAddressPairArray []PortAllowedAddressPairInput

func (PortAllowedAddressPairArray) ElementType

func (PortAllowedAddressPairArray) ToPortAllowedAddressPairArrayOutput

func (i PortAllowedAddressPairArray) ToPortAllowedAddressPairArrayOutput() PortAllowedAddressPairArrayOutput

func (PortAllowedAddressPairArray) ToPortAllowedAddressPairArrayOutputWithContext

func (i PortAllowedAddressPairArray) ToPortAllowedAddressPairArrayOutputWithContext(ctx context.Context) PortAllowedAddressPairArrayOutput

type PortAllowedAddressPairArrayInput

type PortAllowedAddressPairArrayInput interface {
	pulumi.Input

	ToPortAllowedAddressPairArrayOutput() PortAllowedAddressPairArrayOutput
	ToPortAllowedAddressPairArrayOutputWithContext(context.Context) PortAllowedAddressPairArrayOutput
}

PortAllowedAddressPairArrayInput is an input type that accepts PortAllowedAddressPairArray and PortAllowedAddressPairArrayOutput values. You can construct a concrete instance of `PortAllowedAddressPairArrayInput` via:

PortAllowedAddressPairArray{ PortAllowedAddressPairArgs{...} }

type PortAllowedAddressPairArrayOutput

type PortAllowedAddressPairArrayOutput struct{ *pulumi.OutputState }

func (PortAllowedAddressPairArrayOutput) ElementType

func (PortAllowedAddressPairArrayOutput) Index

func (PortAllowedAddressPairArrayOutput) ToPortAllowedAddressPairArrayOutput

func (o PortAllowedAddressPairArrayOutput) ToPortAllowedAddressPairArrayOutput() PortAllowedAddressPairArrayOutput

func (PortAllowedAddressPairArrayOutput) ToPortAllowedAddressPairArrayOutputWithContext

func (o PortAllowedAddressPairArrayOutput) ToPortAllowedAddressPairArrayOutputWithContext(ctx context.Context) PortAllowedAddressPairArrayOutput

type PortAllowedAddressPairInput

type PortAllowedAddressPairInput interface {
	pulumi.Input

	ToPortAllowedAddressPairOutput() PortAllowedAddressPairOutput
	ToPortAllowedAddressPairOutputWithContext(context.Context) PortAllowedAddressPairOutput
}

PortAllowedAddressPairInput is an input type that accepts PortAllowedAddressPairArgs and PortAllowedAddressPairOutput values. You can construct a concrete instance of `PortAllowedAddressPairInput` via:

PortAllowedAddressPairArgs{...}

type PortAllowedAddressPairOutput

type PortAllowedAddressPairOutput struct{ *pulumi.OutputState }

func (PortAllowedAddressPairOutput) ElementType

func (PortAllowedAddressPairOutput) IpAddress

The additional IP address.

func (PortAllowedAddressPairOutput) MacAddress

The additional MAC address.

func (PortAllowedAddressPairOutput) ToPortAllowedAddressPairOutput

func (o PortAllowedAddressPairOutput) ToPortAllowedAddressPairOutput() PortAllowedAddressPairOutput

func (PortAllowedAddressPairOutput) ToPortAllowedAddressPairOutputWithContext

func (o PortAllowedAddressPairOutput) ToPortAllowedAddressPairOutputWithContext(ctx context.Context) PortAllowedAddressPairOutput

type PortArgs

type PortArgs struct {
	// Administrative up/down status for the port
	// (must be `true` or `false` if provided). Changing this updates the
	// `adminStateUp` of an existing port.
	AdminStateUp pulumi.BoolPtrInput
	// An IP/MAC Address pair of additional IP
	// addresses that can be active on this port. The structure is described
	// below.
	AllowedAddressPairs PortAllowedAddressPairArrayInput
	// The port binding allows to specify binding information
	// for the port. The structure is described below.
	Binding PortBindingPtrInput
	// Human-readable description of the port. Changing
	// this updates the `description` of an existing port.
	Description pulumi.StringPtrInput
	// The ID of the device attached to the port. Changing this
	// creates a new port.
	DeviceId pulumi.StringPtrInput
	// The device owner of the port. Changing this creates
	// a new port.
	DeviceOwner pulumi.StringPtrInput
	// The port DNS name. Available, when Neutron DNS extension
	// is enabled.
	DnsName pulumi.StringPtrInput
	// An extra DHCP option that needs to be configured
	// on the port. The structure is described below. Can be specified multiple
	// times.
	ExtraDhcpOptions PortExtraDhcpOptionArrayInput
	// An array of desired IPs for
	// this port. The structure is described below.
	FixedIps PortFixedIpArrayInput
	// Specify a specific MAC address for the port. Changing
	// this creates a new port.
	MacAddress pulumi.StringPtrInput
	// A unique name for the port. Changing this
	// updates the `name` of an existing port.
	Name pulumi.StringPtrInput
	// The ID of the network to attach the port to. Changing
	// this creates a new port.
	NetworkId pulumi.StringInput
	// Create a port with no fixed
	// IP address. This will also remove any fixed IPs previously set on a port. `true`
	// is the only valid value for this argument.
	NoFixedIp pulumi.BoolPtrInput
	// If set to
	// `true`, then no security groups are applied to the port. If set to `false` and
	// no `securityGroupIds` are specified, then the port will yield to the default
	// behavior of the Networking service, which is to usually apply the "default"
	// security group.
	NoSecurityGroups pulumi.BoolPtrInput
	// Whether to explicitly enable or disable
	// port security on the port. Port Security is usually enabled by default, so
	// omitting argument will usually result in a value of `true`. Setting this
	// explicitly to `false` will disable port security. In order to disable port
	// security, the port must not have any security groups. Valid values are `true`
	// and `false`.
	PortSecurityEnabled pulumi.BoolPtrInput
	// Reference to the associated QoS policy.
	QosPolicyId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// port.
	Region pulumi.StringPtrInput
	// A list
	// of security group IDs to apply to the port. The security groups must be
	// specified by ID and not name (as opposed to how they are configured with
	// the Compute Instance).
	SecurityGroupIds pulumi.StringArrayInput
	// A set of string tags for the port.
	Tags pulumi.StringArrayInput
	// The owner of the port. Required if admin wants
	// to create a port for another tenant. Changing this creates a new port.
	TenantId pulumi.StringPtrInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

The set of arguments for constructing a Port resource.

func (PortArgs) ElementType

func (PortArgs) ElementType() reflect.Type

type PortArray

type PortArray []PortInput

func (PortArray) ElementType

func (PortArray) ElementType() reflect.Type

func (PortArray) ToPortArrayOutput

func (i PortArray) ToPortArrayOutput() PortArrayOutput

func (PortArray) ToPortArrayOutputWithContext

func (i PortArray) ToPortArrayOutputWithContext(ctx context.Context) PortArrayOutput

type PortArrayInput

type PortArrayInput interface {
	pulumi.Input

	ToPortArrayOutput() PortArrayOutput
	ToPortArrayOutputWithContext(context.Context) PortArrayOutput
}

PortArrayInput is an input type that accepts PortArray and PortArrayOutput values. You can construct a concrete instance of `PortArrayInput` via:

PortArray{ PortArgs{...} }

type PortArrayOutput

type PortArrayOutput struct{ *pulumi.OutputState }

func (PortArrayOutput) ElementType

func (PortArrayOutput) ElementType() reflect.Type

func (PortArrayOutput) Index

func (PortArrayOutput) ToPortArrayOutput

func (o PortArrayOutput) ToPortArrayOutput() PortArrayOutput

func (PortArrayOutput) ToPortArrayOutputWithContext

func (o PortArrayOutput) ToPortArrayOutputWithContext(ctx context.Context) PortArrayOutput

type PortBinding

type PortBinding struct {
	// The ID of the host to allocate port on.
	HostId *string `pulumi:"hostId"`
	// Custom data to be passed as `binding:profile`. Data
	// must be passed as JSON.
	Profile *string `pulumi:"profile"`
	// A map of JSON strings containing additional
	// details for this specific binding.
	VifDetails map[string]interface{} `pulumi:"vifDetails"`
	// The VNIC type of the port binding.
	VifType *string `pulumi:"vifType"`
	// VNIC type for the port. Can either be `direct`,
	// `direct-physical`, `macvtap`, `normal`, `baremetal` or `virtio-forwarder`.
	// Default value is `normal`. It can be updated on unbound ports only.
	VnicType *string `pulumi:"vnicType"`
}

type PortBindingArgs

type PortBindingArgs struct {
	// The ID of the host to allocate port on.
	HostId pulumi.StringPtrInput `pulumi:"hostId"`
	// Custom data to be passed as `binding:profile`. Data
	// must be passed as JSON.
	Profile pulumi.StringPtrInput `pulumi:"profile"`
	// A map of JSON strings containing additional
	// details for this specific binding.
	VifDetails pulumi.MapInput `pulumi:"vifDetails"`
	// The VNIC type of the port binding.
	VifType pulumi.StringPtrInput `pulumi:"vifType"`
	// VNIC type for the port. Can either be `direct`,
	// `direct-physical`, `macvtap`, `normal`, `baremetal` or `virtio-forwarder`.
	// Default value is `normal`. It can be updated on unbound ports only.
	VnicType pulumi.StringPtrInput `pulumi:"vnicType"`
}

func (PortBindingArgs) ElementType

func (PortBindingArgs) ElementType() reflect.Type

func (PortBindingArgs) ToPortBindingOutput

func (i PortBindingArgs) ToPortBindingOutput() PortBindingOutput

func (PortBindingArgs) ToPortBindingOutputWithContext

func (i PortBindingArgs) ToPortBindingOutputWithContext(ctx context.Context) PortBindingOutput

func (PortBindingArgs) ToPortBindingPtrOutput

func (i PortBindingArgs) ToPortBindingPtrOutput() PortBindingPtrOutput

func (PortBindingArgs) ToPortBindingPtrOutputWithContext

func (i PortBindingArgs) ToPortBindingPtrOutputWithContext(ctx context.Context) PortBindingPtrOutput

type PortBindingInput

type PortBindingInput interface {
	pulumi.Input

	ToPortBindingOutput() PortBindingOutput
	ToPortBindingOutputWithContext(context.Context) PortBindingOutput
}

PortBindingInput is an input type that accepts PortBindingArgs and PortBindingOutput values. You can construct a concrete instance of `PortBindingInput` via:

PortBindingArgs{...}

type PortBindingOutput

type PortBindingOutput struct{ *pulumi.OutputState }

func (PortBindingOutput) ElementType

func (PortBindingOutput) ElementType() reflect.Type

func (PortBindingOutput) HostId

The ID of the host to allocate port on.

func (PortBindingOutput) Profile

Custom data to be passed as `binding:profile`. Data must be passed as JSON.

func (PortBindingOutput) ToPortBindingOutput

func (o PortBindingOutput) ToPortBindingOutput() PortBindingOutput

func (PortBindingOutput) ToPortBindingOutputWithContext

func (o PortBindingOutput) ToPortBindingOutputWithContext(ctx context.Context) PortBindingOutput

func (PortBindingOutput) ToPortBindingPtrOutput

func (o PortBindingOutput) ToPortBindingPtrOutput() PortBindingPtrOutput

func (PortBindingOutput) ToPortBindingPtrOutputWithContext

func (o PortBindingOutput) ToPortBindingPtrOutputWithContext(ctx context.Context) PortBindingPtrOutput

func (PortBindingOutput) VifDetails

func (o PortBindingOutput) VifDetails() pulumi.MapOutput

A map of JSON strings containing additional details for this specific binding.

func (PortBindingOutput) VifType

The VNIC type of the port binding.

func (PortBindingOutput) VnicType

VNIC type for the port. Can either be `direct`, `direct-physical`, `macvtap`, `normal`, `baremetal` or `virtio-forwarder`. Default value is `normal`. It can be updated on unbound ports only.

type PortBindingPtrInput

type PortBindingPtrInput interface {
	pulumi.Input

	ToPortBindingPtrOutput() PortBindingPtrOutput
	ToPortBindingPtrOutputWithContext(context.Context) PortBindingPtrOutput
}

PortBindingPtrInput is an input type that accepts PortBindingArgs, PortBindingPtr and PortBindingPtrOutput values. You can construct a concrete instance of `PortBindingPtrInput` via:

        PortBindingArgs{...}

or:

        nil

func PortBindingPtr

func PortBindingPtr(v *PortBindingArgs) PortBindingPtrInput

type PortBindingPtrOutput

type PortBindingPtrOutput struct{ *pulumi.OutputState }

func (PortBindingPtrOutput) Elem

func (PortBindingPtrOutput) ElementType

func (PortBindingPtrOutput) ElementType() reflect.Type

func (PortBindingPtrOutput) HostId

The ID of the host to allocate port on.

func (PortBindingPtrOutput) Profile

Custom data to be passed as `binding:profile`. Data must be passed as JSON.

func (PortBindingPtrOutput) ToPortBindingPtrOutput

func (o PortBindingPtrOutput) ToPortBindingPtrOutput() PortBindingPtrOutput

func (PortBindingPtrOutput) ToPortBindingPtrOutputWithContext

func (o PortBindingPtrOutput) ToPortBindingPtrOutputWithContext(ctx context.Context) PortBindingPtrOutput

func (PortBindingPtrOutput) VifDetails

func (o PortBindingPtrOutput) VifDetails() pulumi.MapOutput

A map of JSON strings containing additional details for this specific binding.

func (PortBindingPtrOutput) VifType

The VNIC type of the port binding.

func (PortBindingPtrOutput) VnicType

VNIC type for the port. Can either be `direct`, `direct-physical`, `macvtap`, `normal`, `baremetal` or `virtio-forwarder`. Default value is `normal`. It can be updated on unbound ports only.

type PortExtraDhcpOption

type PortExtraDhcpOption struct {
	// IP protocol version. Defaults to 4.
	IpVersion *int `pulumi:"ipVersion"`
	// Name of the DHCP option.
	Name string `pulumi:"name"`
	// Value of the DHCP option.
	Value string `pulumi:"value"`
}

type PortExtraDhcpOptionArgs

type PortExtraDhcpOptionArgs struct {
	// IP protocol version. Defaults to 4.
	IpVersion pulumi.IntPtrInput `pulumi:"ipVersion"`
	// Name of the DHCP option.
	Name pulumi.StringInput `pulumi:"name"`
	// Value of the DHCP option.
	Value pulumi.StringInput `pulumi:"value"`
}

func (PortExtraDhcpOptionArgs) ElementType

func (PortExtraDhcpOptionArgs) ElementType() reflect.Type

func (PortExtraDhcpOptionArgs) ToPortExtraDhcpOptionOutput

func (i PortExtraDhcpOptionArgs) ToPortExtraDhcpOptionOutput() PortExtraDhcpOptionOutput

func (PortExtraDhcpOptionArgs) ToPortExtraDhcpOptionOutputWithContext

func (i PortExtraDhcpOptionArgs) ToPortExtraDhcpOptionOutputWithContext(ctx context.Context) PortExtraDhcpOptionOutput

type PortExtraDhcpOptionArray

type PortExtraDhcpOptionArray []PortExtraDhcpOptionInput

func (PortExtraDhcpOptionArray) ElementType

func (PortExtraDhcpOptionArray) ElementType() reflect.Type

func (PortExtraDhcpOptionArray) ToPortExtraDhcpOptionArrayOutput

func (i PortExtraDhcpOptionArray) ToPortExtraDhcpOptionArrayOutput() PortExtraDhcpOptionArrayOutput

func (PortExtraDhcpOptionArray) ToPortExtraDhcpOptionArrayOutputWithContext

func (i PortExtraDhcpOptionArray) ToPortExtraDhcpOptionArrayOutputWithContext(ctx context.Context) PortExtraDhcpOptionArrayOutput

type PortExtraDhcpOptionArrayInput

type PortExtraDhcpOptionArrayInput interface {
	pulumi.Input

	ToPortExtraDhcpOptionArrayOutput() PortExtraDhcpOptionArrayOutput
	ToPortExtraDhcpOptionArrayOutputWithContext(context.Context) PortExtraDhcpOptionArrayOutput
}

PortExtraDhcpOptionArrayInput is an input type that accepts PortExtraDhcpOptionArray and PortExtraDhcpOptionArrayOutput values. You can construct a concrete instance of `PortExtraDhcpOptionArrayInput` via:

PortExtraDhcpOptionArray{ PortExtraDhcpOptionArgs{...} }

type PortExtraDhcpOptionArrayOutput

type PortExtraDhcpOptionArrayOutput struct{ *pulumi.OutputState }

func (PortExtraDhcpOptionArrayOutput) ElementType

func (PortExtraDhcpOptionArrayOutput) Index

func (PortExtraDhcpOptionArrayOutput) ToPortExtraDhcpOptionArrayOutput

func (o PortExtraDhcpOptionArrayOutput) ToPortExtraDhcpOptionArrayOutput() PortExtraDhcpOptionArrayOutput

func (PortExtraDhcpOptionArrayOutput) ToPortExtraDhcpOptionArrayOutputWithContext

func (o PortExtraDhcpOptionArrayOutput) ToPortExtraDhcpOptionArrayOutputWithContext(ctx context.Context) PortExtraDhcpOptionArrayOutput

type PortExtraDhcpOptionInput

type PortExtraDhcpOptionInput interface {
	pulumi.Input

	ToPortExtraDhcpOptionOutput() PortExtraDhcpOptionOutput
	ToPortExtraDhcpOptionOutputWithContext(context.Context) PortExtraDhcpOptionOutput
}

PortExtraDhcpOptionInput is an input type that accepts PortExtraDhcpOptionArgs and PortExtraDhcpOptionOutput values. You can construct a concrete instance of `PortExtraDhcpOptionInput` via:

PortExtraDhcpOptionArgs{...}

type PortExtraDhcpOptionOutput

type PortExtraDhcpOptionOutput struct{ *pulumi.OutputState }

func (PortExtraDhcpOptionOutput) ElementType

func (PortExtraDhcpOptionOutput) ElementType() reflect.Type

func (PortExtraDhcpOptionOutput) IpVersion

IP protocol version. Defaults to 4.

func (PortExtraDhcpOptionOutput) Name

Name of the DHCP option.

func (PortExtraDhcpOptionOutput) ToPortExtraDhcpOptionOutput

func (o PortExtraDhcpOptionOutput) ToPortExtraDhcpOptionOutput() PortExtraDhcpOptionOutput

func (PortExtraDhcpOptionOutput) ToPortExtraDhcpOptionOutputWithContext

func (o PortExtraDhcpOptionOutput) ToPortExtraDhcpOptionOutputWithContext(ctx context.Context) PortExtraDhcpOptionOutput

func (PortExtraDhcpOptionOutput) Value

Value of the DHCP option.

type PortFixedIp

type PortFixedIp struct {
	// IP address desired in the subnet for this port. If
	// you don't specify `ipAddress`, an available IP address from the specified
	// subnet will be allocated to this port. This field will not be populated if it
	// is left blank or omitted. To retrieve the assigned IP address, use the
	// `allFixedIps` attribute.
	IpAddress *string `pulumi:"ipAddress"`
	// Subnet in which to allocate IP address for
	// this port.
	SubnetId string `pulumi:"subnetId"`
}

type PortFixedIpArgs

type PortFixedIpArgs struct {
	// IP address desired in the subnet for this port. If
	// you don't specify `ipAddress`, an available IP address from the specified
	// subnet will be allocated to this port. This field will not be populated if it
	// is left blank or omitted. To retrieve the assigned IP address, use the
	// `allFixedIps` attribute.
	IpAddress pulumi.StringPtrInput `pulumi:"ipAddress"`
	// Subnet in which to allocate IP address for
	// this port.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (PortFixedIpArgs) ElementType

func (PortFixedIpArgs) ElementType() reflect.Type

func (PortFixedIpArgs) ToPortFixedIpOutput

func (i PortFixedIpArgs) ToPortFixedIpOutput() PortFixedIpOutput

func (PortFixedIpArgs) ToPortFixedIpOutputWithContext

func (i PortFixedIpArgs) ToPortFixedIpOutputWithContext(ctx context.Context) PortFixedIpOutput

type PortFixedIpArray

type PortFixedIpArray []PortFixedIpInput

func (PortFixedIpArray) ElementType

func (PortFixedIpArray) ElementType() reflect.Type

func (PortFixedIpArray) ToPortFixedIpArrayOutput

func (i PortFixedIpArray) ToPortFixedIpArrayOutput() PortFixedIpArrayOutput

func (PortFixedIpArray) ToPortFixedIpArrayOutputWithContext

func (i PortFixedIpArray) ToPortFixedIpArrayOutputWithContext(ctx context.Context) PortFixedIpArrayOutput

type PortFixedIpArrayInput

type PortFixedIpArrayInput interface {
	pulumi.Input

	ToPortFixedIpArrayOutput() PortFixedIpArrayOutput
	ToPortFixedIpArrayOutputWithContext(context.Context) PortFixedIpArrayOutput
}

PortFixedIpArrayInput is an input type that accepts PortFixedIpArray and PortFixedIpArrayOutput values. You can construct a concrete instance of `PortFixedIpArrayInput` via:

PortFixedIpArray{ PortFixedIpArgs{...} }

type PortFixedIpArrayOutput

type PortFixedIpArrayOutput struct{ *pulumi.OutputState }

func (PortFixedIpArrayOutput) ElementType

func (PortFixedIpArrayOutput) ElementType() reflect.Type

func (PortFixedIpArrayOutput) Index

func (PortFixedIpArrayOutput) ToPortFixedIpArrayOutput

func (o PortFixedIpArrayOutput) ToPortFixedIpArrayOutput() PortFixedIpArrayOutput

func (PortFixedIpArrayOutput) ToPortFixedIpArrayOutputWithContext

func (o PortFixedIpArrayOutput) ToPortFixedIpArrayOutputWithContext(ctx context.Context) PortFixedIpArrayOutput

type PortFixedIpInput

type PortFixedIpInput interface {
	pulumi.Input

	ToPortFixedIpOutput() PortFixedIpOutput
	ToPortFixedIpOutputWithContext(context.Context) PortFixedIpOutput
}

PortFixedIpInput is an input type that accepts PortFixedIpArgs and PortFixedIpOutput values. You can construct a concrete instance of `PortFixedIpInput` via:

PortFixedIpArgs{...}

type PortFixedIpOutput

type PortFixedIpOutput struct{ *pulumi.OutputState }

func (PortFixedIpOutput) ElementType

func (PortFixedIpOutput) ElementType() reflect.Type

func (PortFixedIpOutput) IpAddress

IP address desired in the subnet for this port. If you don't specify `ipAddress`, an available IP address from the specified subnet will be allocated to this port. This field will not be populated if it is left blank or omitted. To retrieve the assigned IP address, use the `allFixedIps` attribute.

func (PortFixedIpOutput) SubnetId

func (o PortFixedIpOutput) SubnetId() pulumi.StringOutput

Subnet in which to allocate IP address for this port.

func (PortFixedIpOutput) ToPortFixedIpOutput

func (o PortFixedIpOutput) ToPortFixedIpOutput() PortFixedIpOutput

func (PortFixedIpOutput) ToPortFixedIpOutputWithContext

func (o PortFixedIpOutput) ToPortFixedIpOutputWithContext(ctx context.Context) PortFixedIpOutput

type PortForwardingV2

type PortForwardingV2 struct {
	pulumi.CustomResourceState

	// A text describing the port forwarding. Changing this
	// updates the `description` of an existing port forwarding.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The TCP/UDP/other protocol port number of the port forwarding. Changing this
	// updates the `externalPort` of an existing port forwarding.
	ExternalPort pulumi.IntOutput `pulumi:"externalPort"`
	// The ID of the Neutron floating IP address. Changing this creates a new port forwarding.
	FloatingipId pulumi.StringOutput `pulumi:"floatingipId"`
	// The fixed IPv4 address of the Neutron port associated with the port forwarding.
	// Changing this updates the `internalIpAddress` of an existing port forwarding.
	InternalIpAddress pulumi.StringOutput `pulumi:"internalIpAddress"`
	// The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the
	// port forwarding. Changing this updates the `internalPort` of an existing port forwarding.
	InternalPort pulumi.IntOutput `pulumi:"internalPort"`
	// The ID of the Neutron port associated with the port forwarding. Changing
	// this updates the `internalPortId` of an existing port forwarding.
	InternalPortId pulumi.StringOutput `pulumi:"internalPortId"`
	// The IP protocol used in the port forwarding. Changing this updates the `protocol`
	// of an existing port forwarding.
	Protocol pulumi.StringOutput `pulumi:"protocol"`
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a port forwarding. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// port forwarding.
	Region pulumi.StringOutput `pulumi:"region"`
}

Manages a V2 portforwarding resource within OpenStack.

## Example Usage

### Simple portforwarding

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.NewPortForwardingV2(ctx, "pf1", &networking.PortForwardingV2Args{
			ExternalPort:   pulumi.Int(7233),
			FloatingipId:   pulumi.String("7a52eb59-7d47-415d-a884-046666a6fbae"),
			InternalPort:   pulumi.Int(25),
			InternalPortId: pulumi.String("b930d7f6-ceb7-40a0-8b81-a425dd994ccf"),
			Protocol:       pulumi.String("tcp"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

func GetPortForwardingV2

func GetPortForwardingV2(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PortForwardingV2State, opts ...pulumi.ResourceOption) (*PortForwardingV2, error)

GetPortForwardingV2 gets an existing PortForwardingV2 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 NewPortForwardingV2

func NewPortForwardingV2(ctx *pulumi.Context,
	name string, args *PortForwardingV2Args, opts ...pulumi.ResourceOption) (*PortForwardingV2, error)

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

func (*PortForwardingV2) ElementType

func (*PortForwardingV2) ElementType() reflect.Type

func (*PortForwardingV2) ToPortForwardingV2Output

func (i *PortForwardingV2) ToPortForwardingV2Output() PortForwardingV2Output

func (*PortForwardingV2) ToPortForwardingV2OutputWithContext

func (i *PortForwardingV2) ToPortForwardingV2OutputWithContext(ctx context.Context) PortForwardingV2Output

type PortForwardingV2Args

type PortForwardingV2Args struct {
	// A text describing the port forwarding. Changing this
	// updates the `description` of an existing port forwarding.
	Description pulumi.StringPtrInput
	// The TCP/UDP/other protocol port number of the port forwarding. Changing this
	// updates the `externalPort` of an existing port forwarding.
	ExternalPort pulumi.IntInput
	// The ID of the Neutron floating IP address. Changing this creates a new port forwarding.
	FloatingipId pulumi.StringInput
	// The fixed IPv4 address of the Neutron port associated with the port forwarding.
	// Changing this updates the `internalIpAddress` of an existing port forwarding.
	InternalIpAddress pulumi.StringInput
	// The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the
	// port forwarding. Changing this updates the `internalPort` of an existing port forwarding.
	InternalPort pulumi.IntInput
	// The ID of the Neutron port associated with the port forwarding. Changing
	// this updates the `internalPortId` of an existing port forwarding.
	InternalPortId pulumi.StringInput
	// The IP protocol used in the port forwarding. Changing this updates the `protocol`
	// of an existing port forwarding.
	Protocol pulumi.StringInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a port forwarding. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// port forwarding.
	Region pulumi.StringPtrInput
}

The set of arguments for constructing a PortForwardingV2 resource.

func (PortForwardingV2Args) ElementType

func (PortForwardingV2Args) ElementType() reflect.Type

type PortForwardingV2Array

type PortForwardingV2Array []PortForwardingV2Input

func (PortForwardingV2Array) ElementType

func (PortForwardingV2Array) ElementType() reflect.Type

func (PortForwardingV2Array) ToPortForwardingV2ArrayOutput

func (i PortForwardingV2Array) ToPortForwardingV2ArrayOutput() PortForwardingV2ArrayOutput

func (PortForwardingV2Array) ToPortForwardingV2ArrayOutputWithContext

func (i PortForwardingV2Array) ToPortForwardingV2ArrayOutputWithContext(ctx context.Context) PortForwardingV2ArrayOutput

type PortForwardingV2ArrayInput

type PortForwardingV2ArrayInput interface {
	pulumi.Input

	ToPortForwardingV2ArrayOutput() PortForwardingV2ArrayOutput
	ToPortForwardingV2ArrayOutputWithContext(context.Context) PortForwardingV2ArrayOutput
}

PortForwardingV2ArrayInput is an input type that accepts PortForwardingV2Array and PortForwardingV2ArrayOutput values. You can construct a concrete instance of `PortForwardingV2ArrayInput` via:

PortForwardingV2Array{ PortForwardingV2Args{...} }

type PortForwardingV2ArrayOutput

type PortForwardingV2ArrayOutput struct{ *pulumi.OutputState }

func (PortForwardingV2ArrayOutput) ElementType

func (PortForwardingV2ArrayOutput) Index

func (PortForwardingV2ArrayOutput) ToPortForwardingV2ArrayOutput

func (o PortForwardingV2ArrayOutput) ToPortForwardingV2ArrayOutput() PortForwardingV2ArrayOutput

func (PortForwardingV2ArrayOutput) ToPortForwardingV2ArrayOutputWithContext

func (o PortForwardingV2ArrayOutput) ToPortForwardingV2ArrayOutputWithContext(ctx context.Context) PortForwardingV2ArrayOutput

type PortForwardingV2Input

type PortForwardingV2Input interface {
	pulumi.Input

	ToPortForwardingV2Output() PortForwardingV2Output
	ToPortForwardingV2OutputWithContext(ctx context.Context) PortForwardingV2Output
}

type PortForwardingV2Map

type PortForwardingV2Map map[string]PortForwardingV2Input

func (PortForwardingV2Map) ElementType

func (PortForwardingV2Map) ElementType() reflect.Type

func (PortForwardingV2Map) ToPortForwardingV2MapOutput

func (i PortForwardingV2Map) ToPortForwardingV2MapOutput() PortForwardingV2MapOutput

func (PortForwardingV2Map) ToPortForwardingV2MapOutputWithContext

func (i PortForwardingV2Map) ToPortForwardingV2MapOutputWithContext(ctx context.Context) PortForwardingV2MapOutput

type PortForwardingV2MapInput

type PortForwardingV2MapInput interface {
	pulumi.Input

	ToPortForwardingV2MapOutput() PortForwardingV2MapOutput
	ToPortForwardingV2MapOutputWithContext(context.Context) PortForwardingV2MapOutput
}

PortForwardingV2MapInput is an input type that accepts PortForwardingV2Map and PortForwardingV2MapOutput values. You can construct a concrete instance of `PortForwardingV2MapInput` via:

PortForwardingV2Map{ "key": PortForwardingV2Args{...} }

type PortForwardingV2MapOutput

type PortForwardingV2MapOutput struct{ *pulumi.OutputState }

func (PortForwardingV2MapOutput) ElementType

func (PortForwardingV2MapOutput) ElementType() reflect.Type

func (PortForwardingV2MapOutput) MapIndex

func (PortForwardingV2MapOutput) ToPortForwardingV2MapOutput

func (o PortForwardingV2MapOutput) ToPortForwardingV2MapOutput() PortForwardingV2MapOutput

func (PortForwardingV2MapOutput) ToPortForwardingV2MapOutputWithContext

func (o PortForwardingV2MapOutput) ToPortForwardingV2MapOutputWithContext(ctx context.Context) PortForwardingV2MapOutput

type PortForwardingV2Output

type PortForwardingV2Output struct{ *pulumi.OutputState }

func (PortForwardingV2Output) Description added in v3.9.0

A text describing the port forwarding. Changing this updates the `description` of an existing port forwarding.

func (PortForwardingV2Output) ElementType

func (PortForwardingV2Output) ElementType() reflect.Type

func (PortForwardingV2Output) ExternalPort added in v3.9.0

func (o PortForwardingV2Output) ExternalPort() pulumi.IntOutput

The TCP/UDP/other protocol port number of the port forwarding. Changing this updates the `externalPort` of an existing port forwarding.

func (PortForwardingV2Output) FloatingipId added in v3.9.0

func (o PortForwardingV2Output) FloatingipId() pulumi.StringOutput

The ID of the Neutron floating IP address. Changing this creates a new port forwarding.

func (PortForwardingV2Output) InternalIpAddress added in v3.9.0

func (o PortForwardingV2Output) InternalIpAddress() pulumi.StringOutput

The fixed IPv4 address of the Neutron port associated with the port forwarding. Changing this updates the `internalIpAddress` of an existing port forwarding.

func (PortForwardingV2Output) InternalPort added in v3.9.0

func (o PortForwardingV2Output) InternalPort() pulumi.IntOutput

The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the port forwarding. Changing this updates the `internalPort` of an existing port forwarding.

func (PortForwardingV2Output) InternalPortId added in v3.9.0

func (o PortForwardingV2Output) InternalPortId() pulumi.StringOutput

The ID of the Neutron port associated with the port forwarding. Changing this updates the `internalPortId` of an existing port forwarding.

func (PortForwardingV2Output) Protocol added in v3.9.0

The IP protocol used in the port forwarding. Changing this updates the `protocol` of an existing port forwarding.

func (PortForwardingV2Output) Region added in v3.9.0

The region in which to obtain the V2 networking client. A networking client is needed to create a port forwarding. If omitted, the `region` argument of the provider is used. Changing this creates a new port forwarding.

func (PortForwardingV2Output) ToPortForwardingV2Output

func (o PortForwardingV2Output) ToPortForwardingV2Output() PortForwardingV2Output

func (PortForwardingV2Output) ToPortForwardingV2OutputWithContext

func (o PortForwardingV2Output) ToPortForwardingV2OutputWithContext(ctx context.Context) PortForwardingV2Output

type PortForwardingV2State

type PortForwardingV2State struct {
	// A text describing the port forwarding. Changing this
	// updates the `description` of an existing port forwarding.
	Description pulumi.StringPtrInput
	// The TCP/UDP/other protocol port number of the port forwarding. Changing this
	// updates the `externalPort` of an existing port forwarding.
	ExternalPort pulumi.IntPtrInput
	// The ID of the Neutron floating IP address. Changing this creates a new port forwarding.
	FloatingipId pulumi.StringPtrInput
	// The fixed IPv4 address of the Neutron port associated with the port forwarding.
	// Changing this updates the `internalIpAddress` of an existing port forwarding.
	InternalIpAddress pulumi.StringPtrInput
	// The TCP/UDP/other protocol port number of the Neutron port fixed IP address associated to the
	// port forwarding. Changing this updates the `internalPort` of an existing port forwarding.
	InternalPort pulumi.IntPtrInput
	// The ID of the Neutron port associated with the port forwarding. Changing
	// this updates the `internalPortId` of an existing port forwarding.
	InternalPortId pulumi.StringPtrInput
	// The IP protocol used in the port forwarding. Changing this updates the `protocol`
	// of an existing port forwarding.
	Protocol pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a port forwarding. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// port forwarding.
	Region pulumi.StringPtrInput
}

func (PortForwardingV2State) ElementType

func (PortForwardingV2State) ElementType() reflect.Type

type PortInput

type PortInput interface {
	pulumi.Input

	ToPortOutput() PortOutput
	ToPortOutputWithContext(ctx context.Context) PortOutput
}

type PortMap

type PortMap map[string]PortInput

func (PortMap) ElementType

func (PortMap) ElementType() reflect.Type

func (PortMap) ToPortMapOutput

func (i PortMap) ToPortMapOutput() PortMapOutput

func (PortMap) ToPortMapOutputWithContext

func (i PortMap) ToPortMapOutputWithContext(ctx context.Context) PortMapOutput

type PortMapInput

type PortMapInput interface {
	pulumi.Input

	ToPortMapOutput() PortMapOutput
	ToPortMapOutputWithContext(context.Context) PortMapOutput
}

PortMapInput is an input type that accepts PortMap and PortMapOutput values. You can construct a concrete instance of `PortMapInput` via:

PortMap{ "key": PortArgs{...} }

type PortMapOutput

type PortMapOutput struct{ *pulumi.OutputState }

func (PortMapOutput) ElementType

func (PortMapOutput) ElementType() reflect.Type

func (PortMapOutput) MapIndex

func (PortMapOutput) ToPortMapOutput

func (o PortMapOutput) ToPortMapOutput() PortMapOutput

func (PortMapOutput) ToPortMapOutputWithContext

func (o PortMapOutput) ToPortMapOutputWithContext(ctx context.Context) PortMapOutput

type PortOutput

type PortOutput struct{ *pulumi.OutputState }

func (PortOutput) AdminStateUp added in v3.9.0

func (o PortOutput) AdminStateUp() pulumi.BoolOutput

Administrative up/down status for the port (must be `true` or `false` if provided). Changing this updates the `adminStateUp` of an existing port.

func (PortOutput) AllFixedIps added in v3.9.0

func (o PortOutput) AllFixedIps() pulumi.StringArrayOutput

The collection of Fixed IP addresses on the port in the order returned by the Network v2 API.

func (PortOutput) AllSecurityGroupIds added in v3.9.0

func (o PortOutput) AllSecurityGroupIds() pulumi.StringArrayOutput

The collection of Security Group IDs on the port which have been explicitly and implicitly added.

func (PortOutput) AllTags added in v3.9.0

func (o PortOutput) AllTags() pulumi.StringArrayOutput

The collection of tags assigned on the port, which have been explicitly and implicitly added.

func (PortOutput) AllowedAddressPairs added in v3.9.0

func (o PortOutput) AllowedAddressPairs() PortAllowedAddressPairArrayOutput

An IP/MAC Address pair of additional IP addresses that can be active on this port. The structure is described below.

func (PortOutput) Binding added in v3.9.0

func (o PortOutput) Binding() PortBindingOutput

The port binding allows to specify binding information for the port. The structure is described below.

func (PortOutput) Description added in v3.9.0

func (o PortOutput) Description() pulumi.StringPtrOutput

Human-readable description of the port. Changing this updates the `description` of an existing port.

func (PortOutput) DeviceId added in v3.9.0

func (o PortOutput) DeviceId() pulumi.StringOutput

The ID of the device attached to the port. Changing this creates a new port.

func (PortOutput) DeviceOwner added in v3.9.0

func (o PortOutput) DeviceOwner() pulumi.StringOutput

The device owner of the port. Changing this creates a new port.

func (PortOutput) DnsAssignments added in v3.9.0

func (o PortOutput) DnsAssignments() pulumi.MapArrayOutput

The list of maps representing port DNS assignments.

func (PortOutput) DnsName added in v3.9.0

func (o PortOutput) DnsName() pulumi.StringOutput

The port DNS name. Available, when Neutron DNS extension is enabled.

func (PortOutput) ElementType

func (PortOutput) ElementType() reflect.Type

func (PortOutput) ExtraDhcpOptions added in v3.9.0

func (o PortOutput) ExtraDhcpOptions() PortExtraDhcpOptionArrayOutput

An extra DHCP option that needs to be configured on the port. The structure is described below. Can be specified multiple times.

func (PortOutput) FixedIps added in v3.9.0

func (o PortOutput) FixedIps() PortFixedIpArrayOutput

An array of desired IPs for this port. The structure is described below.

func (PortOutput) MacAddress added in v3.9.0

func (o PortOutput) MacAddress() pulumi.StringOutput

Specify a specific MAC address for the port. Changing this creates a new port.

func (PortOutput) Name added in v3.9.0

func (o PortOutput) Name() pulumi.StringOutput

A unique name for the port. Changing this updates the `name` of an existing port.

func (PortOutput) NetworkId added in v3.9.0

func (o PortOutput) NetworkId() pulumi.StringOutput

The ID of the network to attach the port to. Changing this creates a new port.

func (PortOutput) NoFixedIp added in v3.9.0

func (o PortOutput) NoFixedIp() pulumi.BoolPtrOutput

Create a port with no fixed IP address. This will also remove any fixed IPs previously set on a port. `true` is the only valid value for this argument.

func (PortOutput) NoSecurityGroups added in v3.9.0

func (o PortOutput) NoSecurityGroups() pulumi.BoolPtrOutput

If set to `true`, then no security groups are applied to the port. If set to `false` and no `securityGroupIds` are specified, then the port will yield to the default behavior of the Networking service, which is to usually apply the "default" security group.

func (PortOutput) PortSecurityEnabled added in v3.9.0

func (o PortOutput) PortSecurityEnabled() pulumi.BoolOutput

Whether to explicitly enable or disable port security on the port. Port Security is usually enabled by default, so omitting argument will usually result in a value of `true`. Setting this explicitly to `false` will disable port security. In order to disable port security, the port must not have any security groups. Valid values are `true` and `false`.

func (PortOutput) QosPolicyId added in v3.9.0

func (o PortOutput) QosPolicyId() pulumi.StringOutput

Reference to the associated QoS policy.

func (PortOutput) Region added in v3.9.0

func (o PortOutput) Region() pulumi.StringOutput

The region in which to obtain the V2 Networking client. A Networking client is needed to create a port. If omitted, the `region` argument of the provider is used. Changing this creates a new port.

func (PortOutput) SecurityGroupIds added in v3.9.0

func (o PortOutput) SecurityGroupIds() pulumi.StringArrayOutput

A list of security group IDs to apply to the port. The security groups must be specified by ID and not name (as opposed to how they are configured with the Compute Instance).

func (PortOutput) Tags added in v3.9.0

A set of string tags for the port.

func (PortOutput) TenantId added in v3.9.0

func (o PortOutput) TenantId() pulumi.StringOutput

The owner of the port. Required if admin wants to create a port for another tenant. Changing this creates a new port.

func (PortOutput) ToPortOutput

func (o PortOutput) ToPortOutput() PortOutput

func (PortOutput) ToPortOutputWithContext

func (o PortOutput) ToPortOutputWithContext(ctx context.Context) PortOutput

func (PortOutput) ValueSpecs added in v3.9.0

func (o PortOutput) ValueSpecs() pulumi.MapOutput

Map of additional options.

type PortSecGroupAssociate

type PortSecGroupAssociate struct {
	pulumi.CustomResourceState

	// The collection of Security Group IDs on the port
	// which have been explicitly and implicitly added.
	AllSecurityGroupIds pulumi.StringArrayOutput `pulumi:"allSecurityGroupIds"`
	// Whether to replace or append the list of security
	// groups, specified in the `securityGroupIds`. Defaults to `false`.
	Enforce pulumi.BoolPtrOutput `pulumi:"enforce"`
	// An UUID of the port to apply security groups to.
	PortId pulumi.StringOutput `pulumi:"portId"`
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to manage a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// resource.
	Region pulumi.StringOutput `pulumi:"region"`
	// A list of security group IDs to apply to
	// the port. The security groups must be specified by ID and not name (as
	// opposed to how they are configured with the Compute Instance).
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
}

## Example Usage

### Append a security group to an existing port

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		systemPort, err := networking.LookupPort(ctx, &networking.LookupPortArgs{
			FixedIp: pulumi.StringRef("10.0.0.10"),
		}, nil)
		if err != nil {
			return err
		}
		secgroup, err := networking.LookupSecGroup(ctx, &networking.LookupSecGroupArgs{
			Name: pulumi.StringRef("secgroup"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = networking.NewPortSecGroupAssociate(ctx, "port1", &networking.PortSecGroupAssociateArgs{
			PortId: pulumi.String(systemPort.Id),
			SecurityGroupIds: pulumi.StringArray{
				pulumi.String(secgroup.Id),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

### Enforce a security group to an existing port

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		systemPort, err := networking.LookupPort(ctx, &networking.LookupPortArgs{
			FixedIp: pulumi.StringRef("10.0.0.10"),
		}, nil)
		if err != nil {
			return err
		}
		secgroup, err := networking.LookupSecGroup(ctx, &networking.LookupSecGroupArgs{
			Name: pulumi.StringRef("secgroup"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = networking.NewPortSecGroupAssociate(ctx, "port1", &networking.PortSecGroupAssociateArgs{
			PortId:  pulumi.String(systemPort.Id),
			Enforce: pulumi.Bool(true),
			SecurityGroupIds: pulumi.StringArray{
				pulumi.String(secgroup.Id),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

### Remove all security groups from an existing port

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		systemPort, err := networking.LookupPort(ctx, &networking.LookupPortArgs{
			FixedIp: pulumi.StringRef("10.0.0.10"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = networking.NewPortSecGroupAssociate(ctx, "port1", &networking.PortSecGroupAssociateArgs{
			PortId:           pulumi.String(systemPort.Id),
			Enforce:          pulumi.Bool(true),
			SecurityGroupIds: pulumi.StringArray{},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Port security group association can be imported using the `id` of the port, e.g.

```sh $ pulumi import openstack:networking/portSecGroupAssociate:PortSecGroupAssociate port_1 eae26a3e-1c33-4cc1-9c31-0cd729c438a1 ```

func GetPortSecGroupAssociate

func GetPortSecGroupAssociate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PortSecGroupAssociateState, opts ...pulumi.ResourceOption) (*PortSecGroupAssociate, error)

GetPortSecGroupAssociate gets an existing PortSecGroupAssociate 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 NewPortSecGroupAssociate

func NewPortSecGroupAssociate(ctx *pulumi.Context,
	name string, args *PortSecGroupAssociateArgs, opts ...pulumi.ResourceOption) (*PortSecGroupAssociate, error)

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

func (*PortSecGroupAssociate) ElementType

func (*PortSecGroupAssociate) ElementType() reflect.Type

func (*PortSecGroupAssociate) ToPortSecGroupAssociateOutput

func (i *PortSecGroupAssociate) ToPortSecGroupAssociateOutput() PortSecGroupAssociateOutput

func (*PortSecGroupAssociate) ToPortSecGroupAssociateOutputWithContext

func (i *PortSecGroupAssociate) ToPortSecGroupAssociateOutputWithContext(ctx context.Context) PortSecGroupAssociateOutput

type PortSecGroupAssociateArgs

type PortSecGroupAssociateArgs struct {
	// Whether to replace or append the list of security
	// groups, specified in the `securityGroupIds`. Defaults to `false`.
	Enforce pulumi.BoolPtrInput
	// An UUID of the port to apply security groups to.
	PortId pulumi.StringInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to manage a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// resource.
	Region pulumi.StringPtrInput
	// A list of security group IDs to apply to
	// the port. The security groups must be specified by ID and not name (as
	// opposed to how they are configured with the Compute Instance).
	SecurityGroupIds pulumi.StringArrayInput
}

The set of arguments for constructing a PortSecGroupAssociate resource.

func (PortSecGroupAssociateArgs) ElementType

func (PortSecGroupAssociateArgs) ElementType() reflect.Type

type PortSecGroupAssociateArray

type PortSecGroupAssociateArray []PortSecGroupAssociateInput

func (PortSecGroupAssociateArray) ElementType

func (PortSecGroupAssociateArray) ElementType() reflect.Type

func (PortSecGroupAssociateArray) ToPortSecGroupAssociateArrayOutput

func (i PortSecGroupAssociateArray) ToPortSecGroupAssociateArrayOutput() PortSecGroupAssociateArrayOutput

func (PortSecGroupAssociateArray) ToPortSecGroupAssociateArrayOutputWithContext

func (i PortSecGroupAssociateArray) ToPortSecGroupAssociateArrayOutputWithContext(ctx context.Context) PortSecGroupAssociateArrayOutput

type PortSecGroupAssociateArrayInput

type PortSecGroupAssociateArrayInput interface {
	pulumi.Input

	ToPortSecGroupAssociateArrayOutput() PortSecGroupAssociateArrayOutput
	ToPortSecGroupAssociateArrayOutputWithContext(context.Context) PortSecGroupAssociateArrayOutput
}

PortSecGroupAssociateArrayInput is an input type that accepts PortSecGroupAssociateArray and PortSecGroupAssociateArrayOutput values. You can construct a concrete instance of `PortSecGroupAssociateArrayInput` via:

PortSecGroupAssociateArray{ PortSecGroupAssociateArgs{...} }

type PortSecGroupAssociateArrayOutput

type PortSecGroupAssociateArrayOutput struct{ *pulumi.OutputState }

func (PortSecGroupAssociateArrayOutput) ElementType

func (PortSecGroupAssociateArrayOutput) Index

func (PortSecGroupAssociateArrayOutput) ToPortSecGroupAssociateArrayOutput

func (o PortSecGroupAssociateArrayOutput) ToPortSecGroupAssociateArrayOutput() PortSecGroupAssociateArrayOutput

func (PortSecGroupAssociateArrayOutput) ToPortSecGroupAssociateArrayOutputWithContext

func (o PortSecGroupAssociateArrayOutput) ToPortSecGroupAssociateArrayOutputWithContext(ctx context.Context) PortSecGroupAssociateArrayOutput

type PortSecGroupAssociateInput

type PortSecGroupAssociateInput interface {
	pulumi.Input

	ToPortSecGroupAssociateOutput() PortSecGroupAssociateOutput
	ToPortSecGroupAssociateOutputWithContext(ctx context.Context) PortSecGroupAssociateOutput
}

type PortSecGroupAssociateMap

type PortSecGroupAssociateMap map[string]PortSecGroupAssociateInput

func (PortSecGroupAssociateMap) ElementType

func (PortSecGroupAssociateMap) ElementType() reflect.Type

func (PortSecGroupAssociateMap) ToPortSecGroupAssociateMapOutput

func (i PortSecGroupAssociateMap) ToPortSecGroupAssociateMapOutput() PortSecGroupAssociateMapOutput

func (PortSecGroupAssociateMap) ToPortSecGroupAssociateMapOutputWithContext

func (i PortSecGroupAssociateMap) ToPortSecGroupAssociateMapOutputWithContext(ctx context.Context) PortSecGroupAssociateMapOutput

type PortSecGroupAssociateMapInput

type PortSecGroupAssociateMapInput interface {
	pulumi.Input

	ToPortSecGroupAssociateMapOutput() PortSecGroupAssociateMapOutput
	ToPortSecGroupAssociateMapOutputWithContext(context.Context) PortSecGroupAssociateMapOutput
}

PortSecGroupAssociateMapInput is an input type that accepts PortSecGroupAssociateMap and PortSecGroupAssociateMapOutput values. You can construct a concrete instance of `PortSecGroupAssociateMapInput` via:

PortSecGroupAssociateMap{ "key": PortSecGroupAssociateArgs{...} }

type PortSecGroupAssociateMapOutput

type PortSecGroupAssociateMapOutput struct{ *pulumi.OutputState }

func (PortSecGroupAssociateMapOutput) ElementType

func (PortSecGroupAssociateMapOutput) MapIndex

func (PortSecGroupAssociateMapOutput) ToPortSecGroupAssociateMapOutput

func (o PortSecGroupAssociateMapOutput) ToPortSecGroupAssociateMapOutput() PortSecGroupAssociateMapOutput

func (PortSecGroupAssociateMapOutput) ToPortSecGroupAssociateMapOutputWithContext

func (o PortSecGroupAssociateMapOutput) ToPortSecGroupAssociateMapOutputWithContext(ctx context.Context) PortSecGroupAssociateMapOutput

type PortSecGroupAssociateOutput

type PortSecGroupAssociateOutput struct{ *pulumi.OutputState }

func (PortSecGroupAssociateOutput) AllSecurityGroupIds added in v3.9.0

func (o PortSecGroupAssociateOutput) AllSecurityGroupIds() pulumi.StringArrayOutput

The collection of Security Group IDs on the port which have been explicitly and implicitly added.

func (PortSecGroupAssociateOutput) ElementType

func (PortSecGroupAssociateOutput) Enforce added in v3.9.0

Whether to replace or append the list of security groups, specified in the `securityGroupIds`. Defaults to `false`.

func (PortSecGroupAssociateOutput) PortId added in v3.9.0

An UUID of the port to apply security groups to.

func (PortSecGroupAssociateOutput) Region added in v3.9.0

The region in which to obtain the V2 networking client. A networking client is needed to manage a port. If omitted, the `region` argument of the provider is used. Changing this creates a new resource.

func (PortSecGroupAssociateOutput) SecurityGroupIds added in v3.9.0

A list of security group IDs to apply to the port. The security groups must be specified by ID and not name (as opposed to how they are configured with the Compute Instance).

func (PortSecGroupAssociateOutput) ToPortSecGroupAssociateOutput

func (o PortSecGroupAssociateOutput) ToPortSecGroupAssociateOutput() PortSecGroupAssociateOutput

func (PortSecGroupAssociateOutput) ToPortSecGroupAssociateOutputWithContext

func (o PortSecGroupAssociateOutput) ToPortSecGroupAssociateOutputWithContext(ctx context.Context) PortSecGroupAssociateOutput

type PortSecGroupAssociateState

type PortSecGroupAssociateState struct {
	// The collection of Security Group IDs on the port
	// which have been explicitly and implicitly added.
	AllSecurityGroupIds pulumi.StringArrayInput
	// Whether to replace or append the list of security
	// groups, specified in the `securityGroupIds`. Defaults to `false`.
	Enforce pulumi.BoolPtrInput
	// An UUID of the port to apply security groups to.
	PortId pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to manage a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// resource.
	Region pulumi.StringPtrInput
	// A list of security group IDs to apply to
	// the port. The security groups must be specified by ID and not name (as
	// opposed to how they are configured with the Compute Instance).
	SecurityGroupIds pulumi.StringArrayInput
}

func (PortSecGroupAssociateState) ElementType

func (PortSecGroupAssociateState) ElementType() reflect.Type

type PortState

type PortState struct {
	// Administrative up/down status for the port
	// (must be `true` or `false` if provided). Changing this updates the
	// `adminStateUp` of an existing port.
	AdminStateUp pulumi.BoolPtrInput
	// The collection of Fixed IP addresses on the port in the
	// order returned by the Network v2 API.
	AllFixedIps pulumi.StringArrayInput
	// The collection of Security Group IDs on the port
	// which have been explicitly and implicitly added.
	AllSecurityGroupIds pulumi.StringArrayInput
	// The collection of tags assigned on the port, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayInput
	// An IP/MAC Address pair of additional IP
	// addresses that can be active on this port. The structure is described
	// below.
	AllowedAddressPairs PortAllowedAddressPairArrayInput
	// The port binding allows to specify binding information
	// for the port. The structure is described below.
	Binding PortBindingPtrInput
	// Human-readable description of the port. Changing
	// this updates the `description` of an existing port.
	Description pulumi.StringPtrInput
	// The ID of the device attached to the port. Changing this
	// creates a new port.
	DeviceId pulumi.StringPtrInput
	// The device owner of the port. Changing this creates
	// a new port.
	DeviceOwner pulumi.StringPtrInput
	// The list of maps representing port DNS assignments.
	DnsAssignments pulumi.MapArrayInput
	// The port DNS name. Available, when Neutron DNS extension
	// is enabled.
	DnsName pulumi.StringPtrInput
	// An extra DHCP option that needs to be configured
	// on the port. The structure is described below. Can be specified multiple
	// times.
	ExtraDhcpOptions PortExtraDhcpOptionArrayInput
	// An array of desired IPs for
	// this port. The structure is described below.
	FixedIps PortFixedIpArrayInput
	// Specify a specific MAC address for the port. Changing
	// this creates a new port.
	MacAddress pulumi.StringPtrInput
	// A unique name for the port. Changing this
	// updates the `name` of an existing port.
	Name pulumi.StringPtrInput
	// The ID of the network to attach the port to. Changing
	// this creates a new port.
	NetworkId pulumi.StringPtrInput
	// Create a port with no fixed
	// IP address. This will also remove any fixed IPs previously set on a port. `true`
	// is the only valid value for this argument.
	NoFixedIp pulumi.BoolPtrInput
	// If set to
	// `true`, then no security groups are applied to the port. If set to `false` and
	// no `securityGroupIds` are specified, then the port will yield to the default
	// behavior of the Networking service, which is to usually apply the "default"
	// security group.
	NoSecurityGroups pulumi.BoolPtrInput
	// Whether to explicitly enable or disable
	// port security on the port. Port Security is usually enabled by default, so
	// omitting argument will usually result in a value of `true`. Setting this
	// explicitly to `false` will disable port security. In order to disable port
	// security, the port must not have any security groups. Valid values are `true`
	// and `false`.
	PortSecurityEnabled pulumi.BoolPtrInput
	// Reference to the associated QoS policy.
	QosPolicyId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// port.
	Region pulumi.StringPtrInput
	// A list
	// of security group IDs to apply to the port. The security groups must be
	// specified by ID and not name (as opposed to how they are configured with
	// the Compute Instance).
	SecurityGroupIds pulumi.StringArrayInput
	// A set of string tags for the port.
	Tags pulumi.StringArrayInput
	// The owner of the port. Required if admin wants
	// to create a port for another tenant. Changing this creates a new port.
	TenantId pulumi.StringPtrInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

func (PortState) ElementType

func (PortState) ElementType() reflect.Type

type QosBandwidthLimitRule

type QosBandwidthLimitRule struct {
	pulumi.CustomResourceState

	// The direction of traffic. Defaults to "egress". Changing this updates the direction of the
	// existing QoS bandwidth limit rule.
	Direction pulumi.StringPtrOutput `pulumi:"direction"`
	// The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the
	// maximum burst size in kilobits of the existing QoS bandwidth limit rule.
	MaxBurstKbps pulumi.IntPtrOutput `pulumi:"maxBurstKbps"`
	// The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the
	// maximum kilobits per second of the existing QoS bandwidth limit rule.
	MaxKbps pulumi.IntOutput `pulumi:"maxKbps"`
	// The QoS policy reference. Changing this creates a new QoS bandwidth limit rule.
	QosPolicyId pulumi.StringOutput `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule.
	Region pulumi.StringOutput `pulumi:"region"`
}

Manages a V2 Neutron QoS bandwidth limit rule resource within OpenStack.

## Example Usage

### Create a QoS Policy with some bandwidth limit rule

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		qosPolicy1, err := networking.NewQosPolicy(ctx, "qosPolicy1", &networking.QosPolicyArgs{
			Description: pulumi.String("bw_limit"),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewQosBandwidthLimitRule(ctx, "bwLimitRule1", &networking.QosBandwidthLimitRuleArgs{
			QosPolicyId:  qosPolicy1.ID(),
			MaxKbps:      pulumi.Int(3000),
			MaxBurstKbps: pulumi.Int(300),
			Direction:    pulumi.String("egress"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

QoS bandwidth limit rules can be imported using the `qos_policy_id/bandwidth_limit_rule` format, e.g.

```sh $ pulumi import openstack:networking/qosBandwidthLimitRule:QosBandwidthLimitRule bw_limit_rule_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae/46dfb556-b92f-48ce-94c5-9a9e2140de94 ```

func GetQosBandwidthLimitRule

func GetQosBandwidthLimitRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QosBandwidthLimitRuleState, opts ...pulumi.ResourceOption) (*QosBandwidthLimitRule, error)

GetQosBandwidthLimitRule gets an existing QosBandwidthLimitRule 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 NewQosBandwidthLimitRule

func NewQosBandwidthLimitRule(ctx *pulumi.Context,
	name string, args *QosBandwidthLimitRuleArgs, opts ...pulumi.ResourceOption) (*QosBandwidthLimitRule, error)

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

func (*QosBandwidthLimitRule) ElementType

func (*QosBandwidthLimitRule) ElementType() reflect.Type

func (*QosBandwidthLimitRule) ToQosBandwidthLimitRuleOutput

func (i *QosBandwidthLimitRule) ToQosBandwidthLimitRuleOutput() QosBandwidthLimitRuleOutput

func (*QosBandwidthLimitRule) ToQosBandwidthLimitRuleOutputWithContext

func (i *QosBandwidthLimitRule) ToQosBandwidthLimitRuleOutputWithContext(ctx context.Context) QosBandwidthLimitRuleOutput

type QosBandwidthLimitRuleArgs

type QosBandwidthLimitRuleArgs struct {
	// The direction of traffic. Defaults to "egress". Changing this updates the direction of the
	// existing QoS bandwidth limit rule.
	Direction pulumi.StringPtrInput
	// The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the
	// maximum burst size in kilobits of the existing QoS bandwidth limit rule.
	MaxBurstKbps pulumi.IntPtrInput
	// The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the
	// maximum kilobits per second of the existing QoS bandwidth limit rule.
	MaxKbps pulumi.IntInput
	// The QoS policy reference. Changing this creates a new QoS bandwidth limit rule.
	QosPolicyId pulumi.StringInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule.
	Region pulumi.StringPtrInput
}

The set of arguments for constructing a QosBandwidthLimitRule resource.

func (QosBandwidthLimitRuleArgs) ElementType

func (QosBandwidthLimitRuleArgs) ElementType() reflect.Type

type QosBandwidthLimitRuleArray

type QosBandwidthLimitRuleArray []QosBandwidthLimitRuleInput

func (QosBandwidthLimitRuleArray) ElementType

func (QosBandwidthLimitRuleArray) ElementType() reflect.Type

func (QosBandwidthLimitRuleArray) ToQosBandwidthLimitRuleArrayOutput

func (i QosBandwidthLimitRuleArray) ToQosBandwidthLimitRuleArrayOutput() QosBandwidthLimitRuleArrayOutput

func (QosBandwidthLimitRuleArray) ToQosBandwidthLimitRuleArrayOutputWithContext

func (i QosBandwidthLimitRuleArray) ToQosBandwidthLimitRuleArrayOutputWithContext(ctx context.Context) QosBandwidthLimitRuleArrayOutput

type QosBandwidthLimitRuleArrayInput

type QosBandwidthLimitRuleArrayInput interface {
	pulumi.Input

	ToQosBandwidthLimitRuleArrayOutput() QosBandwidthLimitRuleArrayOutput
	ToQosBandwidthLimitRuleArrayOutputWithContext(context.Context) QosBandwidthLimitRuleArrayOutput
}

QosBandwidthLimitRuleArrayInput is an input type that accepts QosBandwidthLimitRuleArray and QosBandwidthLimitRuleArrayOutput values. You can construct a concrete instance of `QosBandwidthLimitRuleArrayInput` via:

QosBandwidthLimitRuleArray{ QosBandwidthLimitRuleArgs{...} }

type QosBandwidthLimitRuleArrayOutput

type QosBandwidthLimitRuleArrayOutput struct{ *pulumi.OutputState }

func (QosBandwidthLimitRuleArrayOutput) ElementType

func (QosBandwidthLimitRuleArrayOutput) Index

func (QosBandwidthLimitRuleArrayOutput) ToQosBandwidthLimitRuleArrayOutput

func (o QosBandwidthLimitRuleArrayOutput) ToQosBandwidthLimitRuleArrayOutput() QosBandwidthLimitRuleArrayOutput

func (QosBandwidthLimitRuleArrayOutput) ToQosBandwidthLimitRuleArrayOutputWithContext

func (o QosBandwidthLimitRuleArrayOutput) ToQosBandwidthLimitRuleArrayOutputWithContext(ctx context.Context) QosBandwidthLimitRuleArrayOutput

type QosBandwidthLimitRuleInput

type QosBandwidthLimitRuleInput interface {
	pulumi.Input

	ToQosBandwidthLimitRuleOutput() QosBandwidthLimitRuleOutput
	ToQosBandwidthLimitRuleOutputWithContext(ctx context.Context) QosBandwidthLimitRuleOutput
}

type QosBandwidthLimitRuleMap

type QosBandwidthLimitRuleMap map[string]QosBandwidthLimitRuleInput

func (QosBandwidthLimitRuleMap) ElementType

func (QosBandwidthLimitRuleMap) ElementType() reflect.Type

func (QosBandwidthLimitRuleMap) ToQosBandwidthLimitRuleMapOutput

func (i QosBandwidthLimitRuleMap) ToQosBandwidthLimitRuleMapOutput() QosBandwidthLimitRuleMapOutput

func (QosBandwidthLimitRuleMap) ToQosBandwidthLimitRuleMapOutputWithContext

func (i QosBandwidthLimitRuleMap) ToQosBandwidthLimitRuleMapOutputWithContext(ctx context.Context) QosBandwidthLimitRuleMapOutput

type QosBandwidthLimitRuleMapInput

type QosBandwidthLimitRuleMapInput interface {
	pulumi.Input

	ToQosBandwidthLimitRuleMapOutput() QosBandwidthLimitRuleMapOutput
	ToQosBandwidthLimitRuleMapOutputWithContext(context.Context) QosBandwidthLimitRuleMapOutput
}

QosBandwidthLimitRuleMapInput is an input type that accepts QosBandwidthLimitRuleMap and QosBandwidthLimitRuleMapOutput values. You can construct a concrete instance of `QosBandwidthLimitRuleMapInput` via:

QosBandwidthLimitRuleMap{ "key": QosBandwidthLimitRuleArgs{...} }

type QosBandwidthLimitRuleMapOutput

type QosBandwidthLimitRuleMapOutput struct{ *pulumi.OutputState }

func (QosBandwidthLimitRuleMapOutput) ElementType

func (QosBandwidthLimitRuleMapOutput) MapIndex

func (QosBandwidthLimitRuleMapOutput) ToQosBandwidthLimitRuleMapOutput

func (o QosBandwidthLimitRuleMapOutput) ToQosBandwidthLimitRuleMapOutput() QosBandwidthLimitRuleMapOutput

func (QosBandwidthLimitRuleMapOutput) ToQosBandwidthLimitRuleMapOutputWithContext

func (o QosBandwidthLimitRuleMapOutput) ToQosBandwidthLimitRuleMapOutputWithContext(ctx context.Context) QosBandwidthLimitRuleMapOutput

type QosBandwidthLimitRuleOutput

type QosBandwidthLimitRuleOutput struct{ *pulumi.OutputState }

func (QosBandwidthLimitRuleOutput) Direction added in v3.9.0

The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS bandwidth limit rule.

func (QosBandwidthLimitRuleOutput) ElementType

func (QosBandwidthLimitRuleOutput) MaxBurstKbps added in v3.9.0

The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the maximum burst size in kilobits of the existing QoS bandwidth limit rule.

func (QosBandwidthLimitRuleOutput) MaxKbps added in v3.9.0

The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the maximum kilobits per second of the existing QoS bandwidth limit rule.

func (QosBandwidthLimitRuleOutput) QosPolicyId added in v3.9.0

The QoS policy reference. Changing this creates a new QoS bandwidth limit rule.

func (QosBandwidthLimitRuleOutput) Region added in v3.9.0

The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule.

func (QosBandwidthLimitRuleOutput) ToQosBandwidthLimitRuleOutput

func (o QosBandwidthLimitRuleOutput) ToQosBandwidthLimitRuleOutput() QosBandwidthLimitRuleOutput

func (QosBandwidthLimitRuleOutput) ToQosBandwidthLimitRuleOutputWithContext

func (o QosBandwidthLimitRuleOutput) ToQosBandwidthLimitRuleOutputWithContext(ctx context.Context) QosBandwidthLimitRuleOutput

type QosBandwidthLimitRuleState

type QosBandwidthLimitRuleState struct {
	// The direction of traffic. Defaults to "egress". Changing this updates the direction of the
	// existing QoS bandwidth limit rule.
	Direction pulumi.StringPtrInput
	// The maximum burst size in kilobits of a QoS bandwidth limit rule. Changing this updates the
	// maximum burst size in kilobits of the existing QoS bandwidth limit rule.
	MaxBurstKbps pulumi.IntPtrInput
	// The maximum kilobits per second of a QoS bandwidth limit rule. Changing this updates the
	// maximum kilobits per second of the existing QoS bandwidth limit rule.
	MaxKbps pulumi.IntPtrInput
	// The QoS policy reference. Changing this creates a new QoS bandwidth limit rule.
	QosPolicyId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS bandwidth limit rule. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new QoS bandwidth limit rule.
	Region pulumi.StringPtrInput
}

func (QosBandwidthLimitRuleState) ElementType

func (QosBandwidthLimitRuleState) ElementType() reflect.Type

type QosDscpMarkingRule

type QosDscpMarkingRule struct {
	pulumi.CustomResourceState

	// The value of DSCP mark. Changing this updates the DSCP mark value existing
	// QoS DSCP marking rule.
	DscpMark pulumi.IntOutput `pulumi:"dscpMark"`
	// The QoS policy reference. Changing this creates a new QoS DSCP marking rule.
	QosPolicyId pulumi.StringOutput `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule.
	Region pulumi.StringOutput `pulumi:"region"`
}

Manages a V2 Neutron QoS DSCP marking rule resource within OpenStack.

## Example Usage

### Create a QoS Policy with some DSCP marking rule

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		qosPolicy1, err := networking.NewQosPolicy(ctx, "qosPolicy1", &networking.QosPolicyArgs{
			Description: pulumi.String("dscp_mark"),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewQosDscpMarkingRule(ctx, "dscpMarkingRule1", &networking.QosDscpMarkingRuleArgs{
			QosPolicyId: qosPolicy1.ID(),
			DscpMark:    pulumi.Int(26),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

QoS DSCP marking rules can be imported using the `qos_policy_id/dscp_marking_rule_id` format, e.g.

```sh $ pulumi import openstack:networking/qosDscpMarkingRule:QosDscpMarkingRule dscp_marking_rule_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae/46dfb556-b92f-48ce-94c5-9a9e2140de94 ```

func GetQosDscpMarkingRule

func GetQosDscpMarkingRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QosDscpMarkingRuleState, opts ...pulumi.ResourceOption) (*QosDscpMarkingRule, error)

GetQosDscpMarkingRule gets an existing QosDscpMarkingRule 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 NewQosDscpMarkingRule

func NewQosDscpMarkingRule(ctx *pulumi.Context,
	name string, args *QosDscpMarkingRuleArgs, opts ...pulumi.ResourceOption) (*QosDscpMarkingRule, error)

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

func (*QosDscpMarkingRule) ElementType

func (*QosDscpMarkingRule) ElementType() reflect.Type

func (*QosDscpMarkingRule) ToQosDscpMarkingRuleOutput

func (i *QosDscpMarkingRule) ToQosDscpMarkingRuleOutput() QosDscpMarkingRuleOutput

func (*QosDscpMarkingRule) ToQosDscpMarkingRuleOutputWithContext

func (i *QosDscpMarkingRule) ToQosDscpMarkingRuleOutputWithContext(ctx context.Context) QosDscpMarkingRuleOutput

type QosDscpMarkingRuleArgs

type QosDscpMarkingRuleArgs struct {
	// The value of DSCP mark. Changing this updates the DSCP mark value existing
	// QoS DSCP marking rule.
	DscpMark pulumi.IntInput
	// The QoS policy reference. Changing this creates a new QoS DSCP marking rule.
	QosPolicyId pulumi.StringInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule.
	Region pulumi.StringPtrInput
}

The set of arguments for constructing a QosDscpMarkingRule resource.

func (QosDscpMarkingRuleArgs) ElementType

func (QosDscpMarkingRuleArgs) ElementType() reflect.Type

type QosDscpMarkingRuleArray

type QosDscpMarkingRuleArray []QosDscpMarkingRuleInput

func (QosDscpMarkingRuleArray) ElementType

func (QosDscpMarkingRuleArray) ElementType() reflect.Type

func (QosDscpMarkingRuleArray) ToQosDscpMarkingRuleArrayOutput

func (i QosDscpMarkingRuleArray) ToQosDscpMarkingRuleArrayOutput() QosDscpMarkingRuleArrayOutput

func (QosDscpMarkingRuleArray) ToQosDscpMarkingRuleArrayOutputWithContext

func (i QosDscpMarkingRuleArray) ToQosDscpMarkingRuleArrayOutputWithContext(ctx context.Context) QosDscpMarkingRuleArrayOutput

type QosDscpMarkingRuleArrayInput

type QosDscpMarkingRuleArrayInput interface {
	pulumi.Input

	ToQosDscpMarkingRuleArrayOutput() QosDscpMarkingRuleArrayOutput
	ToQosDscpMarkingRuleArrayOutputWithContext(context.Context) QosDscpMarkingRuleArrayOutput
}

QosDscpMarkingRuleArrayInput is an input type that accepts QosDscpMarkingRuleArray and QosDscpMarkingRuleArrayOutput values. You can construct a concrete instance of `QosDscpMarkingRuleArrayInput` via:

QosDscpMarkingRuleArray{ QosDscpMarkingRuleArgs{...} }

type QosDscpMarkingRuleArrayOutput

type QosDscpMarkingRuleArrayOutput struct{ *pulumi.OutputState }

func (QosDscpMarkingRuleArrayOutput) ElementType

func (QosDscpMarkingRuleArrayOutput) Index

func (QosDscpMarkingRuleArrayOutput) ToQosDscpMarkingRuleArrayOutput

func (o QosDscpMarkingRuleArrayOutput) ToQosDscpMarkingRuleArrayOutput() QosDscpMarkingRuleArrayOutput

func (QosDscpMarkingRuleArrayOutput) ToQosDscpMarkingRuleArrayOutputWithContext

func (o QosDscpMarkingRuleArrayOutput) ToQosDscpMarkingRuleArrayOutputWithContext(ctx context.Context) QosDscpMarkingRuleArrayOutput

type QosDscpMarkingRuleInput

type QosDscpMarkingRuleInput interface {
	pulumi.Input

	ToQosDscpMarkingRuleOutput() QosDscpMarkingRuleOutput
	ToQosDscpMarkingRuleOutputWithContext(ctx context.Context) QosDscpMarkingRuleOutput
}

type QosDscpMarkingRuleMap

type QosDscpMarkingRuleMap map[string]QosDscpMarkingRuleInput

func (QosDscpMarkingRuleMap) ElementType

func (QosDscpMarkingRuleMap) ElementType() reflect.Type

func (QosDscpMarkingRuleMap) ToQosDscpMarkingRuleMapOutput

func (i QosDscpMarkingRuleMap) ToQosDscpMarkingRuleMapOutput() QosDscpMarkingRuleMapOutput

func (QosDscpMarkingRuleMap) ToQosDscpMarkingRuleMapOutputWithContext

func (i QosDscpMarkingRuleMap) ToQosDscpMarkingRuleMapOutputWithContext(ctx context.Context) QosDscpMarkingRuleMapOutput

type QosDscpMarkingRuleMapInput

type QosDscpMarkingRuleMapInput interface {
	pulumi.Input

	ToQosDscpMarkingRuleMapOutput() QosDscpMarkingRuleMapOutput
	ToQosDscpMarkingRuleMapOutputWithContext(context.Context) QosDscpMarkingRuleMapOutput
}

QosDscpMarkingRuleMapInput is an input type that accepts QosDscpMarkingRuleMap and QosDscpMarkingRuleMapOutput values. You can construct a concrete instance of `QosDscpMarkingRuleMapInput` via:

QosDscpMarkingRuleMap{ "key": QosDscpMarkingRuleArgs{...} }

type QosDscpMarkingRuleMapOutput

type QosDscpMarkingRuleMapOutput struct{ *pulumi.OutputState }

func (QosDscpMarkingRuleMapOutput) ElementType

func (QosDscpMarkingRuleMapOutput) MapIndex

func (QosDscpMarkingRuleMapOutput) ToQosDscpMarkingRuleMapOutput

func (o QosDscpMarkingRuleMapOutput) ToQosDscpMarkingRuleMapOutput() QosDscpMarkingRuleMapOutput

func (QosDscpMarkingRuleMapOutput) ToQosDscpMarkingRuleMapOutputWithContext

func (o QosDscpMarkingRuleMapOutput) ToQosDscpMarkingRuleMapOutputWithContext(ctx context.Context) QosDscpMarkingRuleMapOutput

type QosDscpMarkingRuleOutput

type QosDscpMarkingRuleOutput struct{ *pulumi.OutputState }

func (QosDscpMarkingRuleOutput) DscpMark added in v3.9.0

The value of DSCP mark. Changing this updates the DSCP mark value existing QoS DSCP marking rule.

func (QosDscpMarkingRuleOutput) ElementType

func (QosDscpMarkingRuleOutput) ElementType() reflect.Type

func (QosDscpMarkingRuleOutput) QosPolicyId added in v3.9.0

The QoS policy reference. Changing this creates a new QoS DSCP marking rule.

func (QosDscpMarkingRuleOutput) Region added in v3.9.0

The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule.

func (QosDscpMarkingRuleOutput) ToQosDscpMarkingRuleOutput

func (o QosDscpMarkingRuleOutput) ToQosDscpMarkingRuleOutput() QosDscpMarkingRuleOutput

func (QosDscpMarkingRuleOutput) ToQosDscpMarkingRuleOutputWithContext

func (o QosDscpMarkingRuleOutput) ToQosDscpMarkingRuleOutputWithContext(ctx context.Context) QosDscpMarkingRuleOutput

type QosDscpMarkingRuleState

type QosDscpMarkingRuleState struct {
	// The value of DSCP mark. Changing this updates the DSCP mark value existing
	// QoS DSCP marking rule.
	DscpMark pulumi.IntPtrInput
	// The QoS policy reference. Changing this creates a new QoS DSCP marking rule.
	QosPolicyId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS DSCP marking rule. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new QoS DSCP marking rule.
	Region pulumi.StringPtrInput
}

func (QosDscpMarkingRuleState) ElementType

func (QosDscpMarkingRuleState) ElementType() reflect.Type

type QosMinimumBandwidthRule

type QosMinimumBandwidthRule struct {
	pulumi.CustomResourceState

	// The direction of traffic. Defaults to "egress". Changing this updates the direction of the
	// existing QoS minimum bandwidth rule.
	Direction pulumi.StringPtrOutput `pulumi:"direction"`
	// The minimum kilobits per second. Changing this updates the min kbps value of the existing
	// QoS minimum bandwidth rule.
	MinKbps pulumi.IntOutput `pulumi:"minKbps"`
	// The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
	QosPolicyId pulumi.StringOutput `pulumi:"qosPolicyId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
	Region pulumi.StringOutput `pulumi:"region"`
}

Manages a V2 Neutron QoS minimum bandwidth rule resource within OpenStack.

## Example Usage

### Create a QoS Policy with some minimum bandwidth rule

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		qosPolicy1, err := networking.NewQosPolicy(ctx, "qosPolicy1", &networking.QosPolicyArgs{
			Description: pulumi.String("min_kbps"),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewQosMinimumBandwidthRule(ctx, "minimumBandwidthRule1", &networking.QosMinimumBandwidthRuleArgs{
			QosPolicyId: qosPolicy1.ID(),
			MinKbps:     pulumi.Int(200),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

QoS minimum bandwidth rules can be imported using the `qos_policy_id/minimum_bandwidth_rule_id` format, e.g.

```sh $ pulumi import openstack:networking/qosMinimumBandwidthRule:QosMinimumBandwidthRule minimum_bandwidth_rule_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae/46dfb556-b92f-48ce-94c5-9a9e2140de94 ```

func GetQosMinimumBandwidthRule

func GetQosMinimumBandwidthRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QosMinimumBandwidthRuleState, opts ...pulumi.ResourceOption) (*QosMinimumBandwidthRule, error)

GetQosMinimumBandwidthRule gets an existing QosMinimumBandwidthRule 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 NewQosMinimumBandwidthRule

func NewQosMinimumBandwidthRule(ctx *pulumi.Context,
	name string, args *QosMinimumBandwidthRuleArgs, opts ...pulumi.ResourceOption) (*QosMinimumBandwidthRule, error)

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

func (*QosMinimumBandwidthRule) ElementType

func (*QosMinimumBandwidthRule) ElementType() reflect.Type

func (*QosMinimumBandwidthRule) ToQosMinimumBandwidthRuleOutput

func (i *QosMinimumBandwidthRule) ToQosMinimumBandwidthRuleOutput() QosMinimumBandwidthRuleOutput

func (*QosMinimumBandwidthRule) ToQosMinimumBandwidthRuleOutputWithContext

func (i *QosMinimumBandwidthRule) ToQosMinimumBandwidthRuleOutputWithContext(ctx context.Context) QosMinimumBandwidthRuleOutput

type QosMinimumBandwidthRuleArgs

type QosMinimumBandwidthRuleArgs struct {
	// The direction of traffic. Defaults to "egress". Changing this updates the direction of the
	// existing QoS minimum bandwidth rule.
	Direction pulumi.StringPtrInput
	// The minimum kilobits per second. Changing this updates the min kbps value of the existing
	// QoS minimum bandwidth rule.
	MinKbps pulumi.IntInput
	// The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
	QosPolicyId pulumi.StringInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
	Region pulumi.StringPtrInput
}

The set of arguments for constructing a QosMinimumBandwidthRule resource.

func (QosMinimumBandwidthRuleArgs) ElementType

type QosMinimumBandwidthRuleArray

type QosMinimumBandwidthRuleArray []QosMinimumBandwidthRuleInput

func (QosMinimumBandwidthRuleArray) ElementType

func (QosMinimumBandwidthRuleArray) ToQosMinimumBandwidthRuleArrayOutput

func (i QosMinimumBandwidthRuleArray) ToQosMinimumBandwidthRuleArrayOutput() QosMinimumBandwidthRuleArrayOutput

func (QosMinimumBandwidthRuleArray) ToQosMinimumBandwidthRuleArrayOutputWithContext

func (i QosMinimumBandwidthRuleArray) ToQosMinimumBandwidthRuleArrayOutputWithContext(ctx context.Context) QosMinimumBandwidthRuleArrayOutput

type QosMinimumBandwidthRuleArrayInput

type QosMinimumBandwidthRuleArrayInput interface {
	pulumi.Input

	ToQosMinimumBandwidthRuleArrayOutput() QosMinimumBandwidthRuleArrayOutput
	ToQosMinimumBandwidthRuleArrayOutputWithContext(context.Context) QosMinimumBandwidthRuleArrayOutput
}

QosMinimumBandwidthRuleArrayInput is an input type that accepts QosMinimumBandwidthRuleArray and QosMinimumBandwidthRuleArrayOutput values. You can construct a concrete instance of `QosMinimumBandwidthRuleArrayInput` via:

QosMinimumBandwidthRuleArray{ QosMinimumBandwidthRuleArgs{...} }

type QosMinimumBandwidthRuleArrayOutput

type QosMinimumBandwidthRuleArrayOutput struct{ *pulumi.OutputState }

func (QosMinimumBandwidthRuleArrayOutput) ElementType

func (QosMinimumBandwidthRuleArrayOutput) Index

func (QosMinimumBandwidthRuleArrayOutput) ToQosMinimumBandwidthRuleArrayOutput

func (o QosMinimumBandwidthRuleArrayOutput) ToQosMinimumBandwidthRuleArrayOutput() QosMinimumBandwidthRuleArrayOutput

func (QosMinimumBandwidthRuleArrayOutput) ToQosMinimumBandwidthRuleArrayOutputWithContext

func (o QosMinimumBandwidthRuleArrayOutput) ToQosMinimumBandwidthRuleArrayOutputWithContext(ctx context.Context) QosMinimumBandwidthRuleArrayOutput

type QosMinimumBandwidthRuleInput

type QosMinimumBandwidthRuleInput interface {
	pulumi.Input

	ToQosMinimumBandwidthRuleOutput() QosMinimumBandwidthRuleOutput
	ToQosMinimumBandwidthRuleOutputWithContext(ctx context.Context) QosMinimumBandwidthRuleOutput
}

type QosMinimumBandwidthRuleMap

type QosMinimumBandwidthRuleMap map[string]QosMinimumBandwidthRuleInput

func (QosMinimumBandwidthRuleMap) ElementType

func (QosMinimumBandwidthRuleMap) ElementType() reflect.Type

func (QosMinimumBandwidthRuleMap) ToQosMinimumBandwidthRuleMapOutput

func (i QosMinimumBandwidthRuleMap) ToQosMinimumBandwidthRuleMapOutput() QosMinimumBandwidthRuleMapOutput

func (QosMinimumBandwidthRuleMap) ToQosMinimumBandwidthRuleMapOutputWithContext

func (i QosMinimumBandwidthRuleMap) ToQosMinimumBandwidthRuleMapOutputWithContext(ctx context.Context) QosMinimumBandwidthRuleMapOutput

type QosMinimumBandwidthRuleMapInput

type QosMinimumBandwidthRuleMapInput interface {
	pulumi.Input

	ToQosMinimumBandwidthRuleMapOutput() QosMinimumBandwidthRuleMapOutput
	ToQosMinimumBandwidthRuleMapOutputWithContext(context.Context) QosMinimumBandwidthRuleMapOutput
}

QosMinimumBandwidthRuleMapInput is an input type that accepts QosMinimumBandwidthRuleMap and QosMinimumBandwidthRuleMapOutput values. You can construct a concrete instance of `QosMinimumBandwidthRuleMapInput` via:

QosMinimumBandwidthRuleMap{ "key": QosMinimumBandwidthRuleArgs{...} }

type QosMinimumBandwidthRuleMapOutput

type QosMinimumBandwidthRuleMapOutput struct{ *pulumi.OutputState }

func (QosMinimumBandwidthRuleMapOutput) ElementType

func (QosMinimumBandwidthRuleMapOutput) MapIndex

func (QosMinimumBandwidthRuleMapOutput) ToQosMinimumBandwidthRuleMapOutput

func (o QosMinimumBandwidthRuleMapOutput) ToQosMinimumBandwidthRuleMapOutput() QosMinimumBandwidthRuleMapOutput

func (QosMinimumBandwidthRuleMapOutput) ToQosMinimumBandwidthRuleMapOutputWithContext

func (o QosMinimumBandwidthRuleMapOutput) ToQosMinimumBandwidthRuleMapOutputWithContext(ctx context.Context) QosMinimumBandwidthRuleMapOutput

type QosMinimumBandwidthRuleOutput

type QosMinimumBandwidthRuleOutput struct{ *pulumi.OutputState }

func (QosMinimumBandwidthRuleOutput) Direction added in v3.9.0

The direction of traffic. Defaults to "egress". Changing this updates the direction of the existing QoS minimum bandwidth rule.

func (QosMinimumBandwidthRuleOutput) ElementType

func (QosMinimumBandwidthRuleOutput) MinKbps added in v3.9.0

The minimum kilobits per second. Changing this updates the min kbps value of the existing QoS minimum bandwidth rule.

func (QosMinimumBandwidthRuleOutput) QosPolicyId added in v3.9.0

The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.

func (QosMinimumBandwidthRuleOutput) Region added in v3.9.0

The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.

func (QosMinimumBandwidthRuleOutput) ToQosMinimumBandwidthRuleOutput

func (o QosMinimumBandwidthRuleOutput) ToQosMinimumBandwidthRuleOutput() QosMinimumBandwidthRuleOutput

func (QosMinimumBandwidthRuleOutput) ToQosMinimumBandwidthRuleOutputWithContext

func (o QosMinimumBandwidthRuleOutput) ToQosMinimumBandwidthRuleOutputWithContext(ctx context.Context) QosMinimumBandwidthRuleOutput

type QosMinimumBandwidthRuleState

type QosMinimumBandwidthRuleState struct {
	// The direction of traffic. Defaults to "egress". Changing this updates the direction of the
	// existing QoS minimum bandwidth rule.
	Direction pulumi.StringPtrInput
	// The minimum kilobits per second. Changing this updates the min kbps value of the existing
	// QoS minimum bandwidth rule.
	MinKbps pulumi.IntPtrInput
	// The QoS policy reference. Changing this creates a new QoS minimum bandwidth rule.
	QosPolicyId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron QoS minimum bandwidth rule. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new QoS minimum bandwidth rule.
	Region pulumi.StringPtrInput
}

func (QosMinimumBandwidthRuleState) ElementType

type QosPolicy

type QosPolicy struct {
	pulumi.CustomResourceState

	// The collection of tags assigned on the QoS policy, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayOutput `pulumi:"allTags"`
	// The time at which QoS policy was created.
	CreatedAt pulumi.StringOutput `pulumi:"createdAt"`
	// The human-readable description for the QoS policy.
	// Changing this updates the description of the existing QoS policy.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Indicates whether the QoS policy is default
	// QoS policy or not. Changing this updates the default status of the existing
	// QoS policy.
	IsDefault pulumi.BoolPtrOutput `pulumi:"isDefault"`
	// The name of the QoS policy. Changing this updates the name of
	// the existing QoS policy.
	Name pulumi.StringOutput `pulumi:"name"`
	// The owner of the QoS policy. Required if admin wants to
	// create a QoS policy for another project. Changing this creates a new QoS policy.
	ProjectId pulumi.StringOutput `pulumi:"projectId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron Qos policy. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// QoS policy.
	Region pulumi.StringOutput `pulumi:"region"`
	// The revision number of the QoS policy.
	RevisionNumber pulumi.IntOutput `pulumi:"revisionNumber"`
	// Indicates whether this QoS policy is shared across
	// all projects. Changing this updates the shared status of the existing
	// QoS policy.
	Shared pulumi.BoolPtrOutput `pulumi:"shared"`
	// A set of string tags for the QoS policy.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// The time at which QoS policy was created.
	UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"`
	// Map of additional options.
	ValueSpecs pulumi.MapOutput `pulumi:"valueSpecs"`
}

Manages a V2 Neutron QoS policy resource within OpenStack.

## Example Usage

### Create a QoS Policy

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.NewQosPolicy(ctx, "qosPolicy1", &networking.QosPolicyArgs{
			Description: pulumi.String("bw_limit"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

QoS Policies can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/qosPolicy:QosPolicy qos_policy_1 d6ae28ce-fcb5-4180-aa62-d260a27e09ae ```

func GetQosPolicy

func GetQosPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QosPolicyState, opts ...pulumi.ResourceOption) (*QosPolicy, error)

GetQosPolicy gets an existing QosPolicy 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 NewQosPolicy

func NewQosPolicy(ctx *pulumi.Context,
	name string, args *QosPolicyArgs, opts ...pulumi.ResourceOption) (*QosPolicy, error)

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

func (*QosPolicy) ElementType

func (*QosPolicy) ElementType() reflect.Type

func (*QosPolicy) ToQosPolicyOutput

func (i *QosPolicy) ToQosPolicyOutput() QosPolicyOutput

func (*QosPolicy) ToQosPolicyOutputWithContext

func (i *QosPolicy) ToQosPolicyOutputWithContext(ctx context.Context) QosPolicyOutput

type QosPolicyArgs

type QosPolicyArgs struct {
	// The human-readable description for the QoS policy.
	// Changing this updates the description of the existing QoS policy.
	Description pulumi.StringPtrInput
	// Indicates whether the QoS policy is default
	// QoS policy or not. Changing this updates the default status of the existing
	// QoS policy.
	IsDefault pulumi.BoolPtrInput
	// The name of the QoS policy. Changing this updates the name of
	// the existing QoS policy.
	Name pulumi.StringPtrInput
	// The owner of the QoS policy. Required if admin wants to
	// create a QoS policy for another project. Changing this creates a new QoS policy.
	ProjectId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron Qos policy. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// QoS policy.
	Region pulumi.StringPtrInput
	// Indicates whether this QoS policy is shared across
	// all projects. Changing this updates the shared status of the existing
	// QoS policy.
	Shared pulumi.BoolPtrInput
	// A set of string tags for the QoS policy.
	Tags pulumi.StringArrayInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

The set of arguments for constructing a QosPolicy resource.

func (QosPolicyArgs) ElementType

func (QosPolicyArgs) ElementType() reflect.Type

type QosPolicyArray

type QosPolicyArray []QosPolicyInput

func (QosPolicyArray) ElementType

func (QosPolicyArray) ElementType() reflect.Type

func (QosPolicyArray) ToQosPolicyArrayOutput

func (i QosPolicyArray) ToQosPolicyArrayOutput() QosPolicyArrayOutput

func (QosPolicyArray) ToQosPolicyArrayOutputWithContext

func (i QosPolicyArray) ToQosPolicyArrayOutputWithContext(ctx context.Context) QosPolicyArrayOutput

type QosPolicyArrayInput

type QosPolicyArrayInput interface {
	pulumi.Input

	ToQosPolicyArrayOutput() QosPolicyArrayOutput
	ToQosPolicyArrayOutputWithContext(context.Context) QosPolicyArrayOutput
}

QosPolicyArrayInput is an input type that accepts QosPolicyArray and QosPolicyArrayOutput values. You can construct a concrete instance of `QosPolicyArrayInput` via:

QosPolicyArray{ QosPolicyArgs{...} }

type QosPolicyArrayOutput

type QosPolicyArrayOutput struct{ *pulumi.OutputState }

func (QosPolicyArrayOutput) ElementType

func (QosPolicyArrayOutput) ElementType() reflect.Type

func (QosPolicyArrayOutput) Index

func (QosPolicyArrayOutput) ToQosPolicyArrayOutput

func (o QosPolicyArrayOutput) ToQosPolicyArrayOutput() QosPolicyArrayOutput

func (QosPolicyArrayOutput) ToQosPolicyArrayOutputWithContext

func (o QosPolicyArrayOutput) ToQosPolicyArrayOutputWithContext(ctx context.Context) QosPolicyArrayOutput

type QosPolicyInput

type QosPolicyInput interface {
	pulumi.Input

	ToQosPolicyOutput() QosPolicyOutput
	ToQosPolicyOutputWithContext(ctx context.Context) QosPolicyOutput
}

type QosPolicyMap

type QosPolicyMap map[string]QosPolicyInput

func (QosPolicyMap) ElementType

func (QosPolicyMap) ElementType() reflect.Type

func (QosPolicyMap) ToQosPolicyMapOutput

func (i QosPolicyMap) ToQosPolicyMapOutput() QosPolicyMapOutput

func (QosPolicyMap) ToQosPolicyMapOutputWithContext

func (i QosPolicyMap) ToQosPolicyMapOutputWithContext(ctx context.Context) QosPolicyMapOutput

type QosPolicyMapInput

type QosPolicyMapInput interface {
	pulumi.Input

	ToQosPolicyMapOutput() QosPolicyMapOutput
	ToQosPolicyMapOutputWithContext(context.Context) QosPolicyMapOutput
}

QosPolicyMapInput is an input type that accepts QosPolicyMap and QosPolicyMapOutput values. You can construct a concrete instance of `QosPolicyMapInput` via:

QosPolicyMap{ "key": QosPolicyArgs{...} }

type QosPolicyMapOutput

type QosPolicyMapOutput struct{ *pulumi.OutputState }

func (QosPolicyMapOutput) ElementType

func (QosPolicyMapOutput) ElementType() reflect.Type

func (QosPolicyMapOutput) MapIndex

func (QosPolicyMapOutput) ToQosPolicyMapOutput

func (o QosPolicyMapOutput) ToQosPolicyMapOutput() QosPolicyMapOutput

func (QosPolicyMapOutput) ToQosPolicyMapOutputWithContext

func (o QosPolicyMapOutput) ToQosPolicyMapOutputWithContext(ctx context.Context) QosPolicyMapOutput

type QosPolicyOutput

type QosPolicyOutput struct{ *pulumi.OutputState }

func (QosPolicyOutput) AllTags added in v3.9.0

The collection of tags assigned on the QoS policy, which have been explicitly and implicitly added.

func (QosPolicyOutput) CreatedAt added in v3.9.0

func (o QosPolicyOutput) CreatedAt() pulumi.StringOutput

The time at which QoS policy was created.

func (QosPolicyOutput) Description added in v3.9.0

func (o QosPolicyOutput) Description() pulumi.StringPtrOutput

The human-readable description for the QoS policy. Changing this updates the description of the existing QoS policy.

func (QosPolicyOutput) ElementType

func (QosPolicyOutput) ElementType() reflect.Type

func (QosPolicyOutput) IsDefault added in v3.9.0

func (o QosPolicyOutput) IsDefault() pulumi.BoolPtrOutput

Indicates whether the QoS policy is default QoS policy or not. Changing this updates the default status of the existing QoS policy.

func (QosPolicyOutput) Name added in v3.9.0

The name of the QoS policy. Changing this updates the name of the existing QoS policy.

func (QosPolicyOutput) ProjectId added in v3.9.0

func (o QosPolicyOutput) ProjectId() pulumi.StringOutput

The owner of the QoS policy. Required if admin wants to create a QoS policy for another project. Changing this creates a new QoS policy.

func (QosPolicyOutput) Region added in v3.9.0

func (o QosPolicyOutput) Region() pulumi.StringOutput

The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron Qos policy. If omitted, the `region` argument of the provider is used. Changing this creates a new QoS policy.

func (QosPolicyOutput) RevisionNumber added in v3.9.0

func (o QosPolicyOutput) RevisionNumber() pulumi.IntOutput

The revision number of the QoS policy.

func (QosPolicyOutput) Shared added in v3.9.0

Indicates whether this QoS policy is shared across all projects. Changing this updates the shared status of the existing QoS policy.

func (QosPolicyOutput) Tags added in v3.9.0

A set of string tags for the QoS policy.

func (QosPolicyOutput) ToQosPolicyOutput

func (o QosPolicyOutput) ToQosPolicyOutput() QosPolicyOutput

func (QosPolicyOutput) ToQosPolicyOutputWithContext

func (o QosPolicyOutput) ToQosPolicyOutputWithContext(ctx context.Context) QosPolicyOutput

func (QosPolicyOutput) UpdatedAt added in v3.9.0

func (o QosPolicyOutput) UpdatedAt() pulumi.StringOutput

The time at which QoS policy was created.

func (QosPolicyOutput) ValueSpecs added in v3.9.0

func (o QosPolicyOutput) ValueSpecs() pulumi.MapOutput

Map of additional options.

type QosPolicyState

type QosPolicyState struct {
	// The collection of tags assigned on the QoS policy, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayInput
	// The time at which QoS policy was created.
	CreatedAt pulumi.StringPtrInput
	// The human-readable description for the QoS policy.
	// Changing this updates the description of the existing QoS policy.
	Description pulumi.StringPtrInput
	// Indicates whether the QoS policy is default
	// QoS policy or not. Changing this updates the default status of the existing
	// QoS policy.
	IsDefault pulumi.BoolPtrInput
	// The name of the QoS policy. Changing this updates the name of
	// the existing QoS policy.
	Name pulumi.StringPtrInput
	// The owner of the QoS policy. Required if admin wants to
	// create a QoS policy for another project. Changing this creates a new QoS policy.
	ProjectId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron Qos policy. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// QoS policy.
	Region pulumi.StringPtrInput
	// The revision number of the QoS policy.
	RevisionNumber pulumi.IntPtrInput
	// Indicates whether this QoS policy is shared across
	// all projects. Changing this updates the shared status of the existing
	// QoS policy.
	Shared pulumi.BoolPtrInput
	// A set of string tags for the QoS policy.
	Tags pulumi.StringArrayInput
	// The time at which QoS policy was created.
	UpdatedAt pulumi.StringPtrInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

func (QosPolicyState) ElementType

func (QosPolicyState) ElementType() reflect.Type

type QuotaV2

type QuotaV2 struct {
	pulumi.CustomResourceState

	// Quota value for floating IPs. Changing this updates the
	// existing quota.
	Floatingip pulumi.IntOutput `pulumi:"floatingip"`
	// Quota value for networks. Changing this updates the
	// existing quota.
	Network pulumi.IntOutput `pulumi:"network"`
	// Quota value for ports. Changing this updates the
	// existing quota.
	Port pulumi.IntOutput `pulumi:"port"`
	// ID of the project to manage quota. Changing this
	// creates new quota.
	ProjectId pulumi.StringOutput `pulumi:"projectId"`
	// Quota value for RBAC policies.
	// Changing this updates the existing quota.
	RbacPolicy pulumi.IntOutput `pulumi:"rbacPolicy"`
	// The region in which to create the quota. If
	// omitted, the `region` argument of the provider is used. Changing this
	// creates new quota.
	Region pulumi.StringOutput `pulumi:"region"`
	// Quota value for routers. Changing this updates the
	// existing quota.
	Router pulumi.IntOutput `pulumi:"router"`
	// Quota value for security groups. Changing
	// this updates the existing quota.
	SecurityGroup pulumi.IntOutput `pulumi:"securityGroup"`
	// Quota value for security group rules.
	// Changing this updates the existing quota.
	SecurityGroupRule pulumi.IntOutput `pulumi:"securityGroupRule"`
	// Quota value for subnets. Changing
	// this updates the existing quota.
	Subnet pulumi.IntOutput `pulumi:"subnet"`
	// Quota value for subnetpools.
	// Changing this updates the existing quota.
	Subnetpool pulumi.IntOutput `pulumi:"subnetpool"`
}

Manages a V2 networking quota resource within OpenStack.

> **Note:** This usually requires admin privileges.

> **Note:** This resource has a no-op deletion so no actual actions will be done against the OpenStack API

in case of delete call.

> **Note:** This resource has all-in creation so all optional quota arguments that were not specified are

created with zero value.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/identity"
"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project1, err := identity.NewProject(ctx, "project1", nil)
		if err != nil {
			return err
		}
		_, err = networking.NewQuotaV2(ctx, "quota1", &networking.QuotaV2Args{
			ProjectId:         project1.ID(),
			Floatingip:        pulumi.Int(10),
			Network:           pulumi.Int(4),
			Port:              pulumi.Int(100),
			RbacPolicy:        pulumi.Int(10),
			Router:            pulumi.Int(4),
			SecurityGroup:     pulumi.Int(10),
			SecurityGroupRule: pulumi.Int(100),
			Subnet:            pulumi.Int(8),
			Subnetpool:        pulumi.Int(2),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Quotas can be imported using the `project_id/region_name`, e.g.

```sh $ pulumi import openstack:networking/quotaV2:QuotaV2 quota_1 2a0f2240-c5e6-41de-896d-e80d97428d6b/region_1 ```

func GetQuotaV2

func GetQuotaV2(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QuotaV2State, opts ...pulumi.ResourceOption) (*QuotaV2, error)

GetQuotaV2 gets an existing QuotaV2 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 NewQuotaV2

func NewQuotaV2(ctx *pulumi.Context,
	name string, args *QuotaV2Args, opts ...pulumi.ResourceOption) (*QuotaV2, error)

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

func (*QuotaV2) ElementType

func (*QuotaV2) ElementType() reflect.Type

func (*QuotaV2) ToQuotaV2Output

func (i *QuotaV2) ToQuotaV2Output() QuotaV2Output

func (*QuotaV2) ToQuotaV2OutputWithContext

func (i *QuotaV2) ToQuotaV2OutputWithContext(ctx context.Context) QuotaV2Output

type QuotaV2Args

type QuotaV2Args struct {
	// Quota value for floating IPs. Changing this updates the
	// existing quota.
	Floatingip pulumi.IntPtrInput
	// Quota value for networks. Changing this updates the
	// existing quota.
	Network pulumi.IntPtrInput
	// Quota value for ports. Changing this updates the
	// existing quota.
	Port pulumi.IntPtrInput
	// ID of the project to manage quota. Changing this
	// creates new quota.
	ProjectId pulumi.StringInput
	// Quota value for RBAC policies.
	// Changing this updates the existing quota.
	RbacPolicy pulumi.IntPtrInput
	// The region in which to create the quota. If
	// omitted, the `region` argument of the provider is used. Changing this
	// creates new quota.
	Region pulumi.StringPtrInput
	// Quota value for routers. Changing this updates the
	// existing quota.
	Router pulumi.IntPtrInput
	// Quota value for security groups. Changing
	// this updates the existing quota.
	SecurityGroup pulumi.IntPtrInput
	// Quota value for security group rules.
	// Changing this updates the existing quota.
	SecurityGroupRule pulumi.IntPtrInput
	// Quota value for subnets. Changing
	// this updates the existing quota.
	Subnet pulumi.IntPtrInput
	// Quota value for subnetpools.
	// Changing this updates the existing quota.
	Subnetpool pulumi.IntPtrInput
}

The set of arguments for constructing a QuotaV2 resource.

func (QuotaV2Args) ElementType

func (QuotaV2Args) ElementType() reflect.Type

type QuotaV2Array

type QuotaV2Array []QuotaV2Input

func (QuotaV2Array) ElementType

func (QuotaV2Array) ElementType() reflect.Type

func (QuotaV2Array) ToQuotaV2ArrayOutput

func (i QuotaV2Array) ToQuotaV2ArrayOutput() QuotaV2ArrayOutput

func (QuotaV2Array) ToQuotaV2ArrayOutputWithContext

func (i QuotaV2Array) ToQuotaV2ArrayOutputWithContext(ctx context.Context) QuotaV2ArrayOutput

type QuotaV2ArrayInput

type QuotaV2ArrayInput interface {
	pulumi.Input

	ToQuotaV2ArrayOutput() QuotaV2ArrayOutput
	ToQuotaV2ArrayOutputWithContext(context.Context) QuotaV2ArrayOutput
}

QuotaV2ArrayInput is an input type that accepts QuotaV2Array and QuotaV2ArrayOutput values. You can construct a concrete instance of `QuotaV2ArrayInput` via:

QuotaV2Array{ QuotaV2Args{...} }

type QuotaV2ArrayOutput

type QuotaV2ArrayOutput struct{ *pulumi.OutputState }

func (QuotaV2ArrayOutput) ElementType

func (QuotaV2ArrayOutput) ElementType() reflect.Type

func (QuotaV2ArrayOutput) Index

func (QuotaV2ArrayOutput) ToQuotaV2ArrayOutput

func (o QuotaV2ArrayOutput) ToQuotaV2ArrayOutput() QuotaV2ArrayOutput

func (QuotaV2ArrayOutput) ToQuotaV2ArrayOutputWithContext

func (o QuotaV2ArrayOutput) ToQuotaV2ArrayOutputWithContext(ctx context.Context) QuotaV2ArrayOutput

type QuotaV2Input

type QuotaV2Input interface {
	pulumi.Input

	ToQuotaV2Output() QuotaV2Output
	ToQuotaV2OutputWithContext(ctx context.Context) QuotaV2Output
}

type QuotaV2Map

type QuotaV2Map map[string]QuotaV2Input

func (QuotaV2Map) ElementType

func (QuotaV2Map) ElementType() reflect.Type

func (QuotaV2Map) ToQuotaV2MapOutput

func (i QuotaV2Map) ToQuotaV2MapOutput() QuotaV2MapOutput

func (QuotaV2Map) ToQuotaV2MapOutputWithContext

func (i QuotaV2Map) ToQuotaV2MapOutputWithContext(ctx context.Context) QuotaV2MapOutput

type QuotaV2MapInput

type QuotaV2MapInput interface {
	pulumi.Input

	ToQuotaV2MapOutput() QuotaV2MapOutput
	ToQuotaV2MapOutputWithContext(context.Context) QuotaV2MapOutput
}

QuotaV2MapInput is an input type that accepts QuotaV2Map and QuotaV2MapOutput values. You can construct a concrete instance of `QuotaV2MapInput` via:

QuotaV2Map{ "key": QuotaV2Args{...} }

type QuotaV2MapOutput

type QuotaV2MapOutput struct{ *pulumi.OutputState }

func (QuotaV2MapOutput) ElementType

func (QuotaV2MapOutput) ElementType() reflect.Type

func (QuotaV2MapOutput) MapIndex

func (QuotaV2MapOutput) ToQuotaV2MapOutput

func (o QuotaV2MapOutput) ToQuotaV2MapOutput() QuotaV2MapOutput

func (QuotaV2MapOutput) ToQuotaV2MapOutputWithContext

func (o QuotaV2MapOutput) ToQuotaV2MapOutputWithContext(ctx context.Context) QuotaV2MapOutput

type QuotaV2Output

type QuotaV2Output struct{ *pulumi.OutputState }

func (QuotaV2Output) ElementType

func (QuotaV2Output) ElementType() reflect.Type

func (QuotaV2Output) Floatingip added in v3.9.0

func (o QuotaV2Output) Floatingip() pulumi.IntOutput

Quota value for floating IPs. Changing this updates the existing quota.

func (QuotaV2Output) Network added in v3.9.0

func (o QuotaV2Output) Network() pulumi.IntOutput

Quota value for networks. Changing this updates the existing quota.

func (QuotaV2Output) Port added in v3.9.0

func (o QuotaV2Output) Port() pulumi.IntOutput

Quota value for ports. Changing this updates the existing quota.

func (QuotaV2Output) ProjectId added in v3.9.0

func (o QuotaV2Output) ProjectId() pulumi.StringOutput

ID of the project to manage quota. Changing this creates new quota.

func (QuotaV2Output) RbacPolicy added in v3.9.0

func (o QuotaV2Output) RbacPolicy() pulumi.IntOutput

Quota value for RBAC policies. Changing this updates the existing quota.

func (QuotaV2Output) Region added in v3.9.0

func (o QuotaV2Output) Region() pulumi.StringOutput

The region in which to create the quota. If omitted, the `region` argument of the provider is used. Changing this creates new quota.

func (QuotaV2Output) Router added in v3.9.0

func (o QuotaV2Output) Router() pulumi.IntOutput

Quota value for routers. Changing this updates the existing quota.

func (QuotaV2Output) SecurityGroup added in v3.9.0

func (o QuotaV2Output) SecurityGroup() pulumi.IntOutput

Quota value for security groups. Changing this updates the existing quota.

func (QuotaV2Output) SecurityGroupRule added in v3.9.0

func (o QuotaV2Output) SecurityGroupRule() pulumi.IntOutput

Quota value for security group rules. Changing this updates the existing quota.

func (QuotaV2Output) Subnet added in v3.9.0

func (o QuotaV2Output) Subnet() pulumi.IntOutput

Quota value for subnets. Changing this updates the existing quota.

func (QuotaV2Output) Subnetpool added in v3.9.0

func (o QuotaV2Output) Subnetpool() pulumi.IntOutput

Quota value for subnetpools. Changing this updates the existing quota.

func (QuotaV2Output) ToQuotaV2Output

func (o QuotaV2Output) ToQuotaV2Output() QuotaV2Output

func (QuotaV2Output) ToQuotaV2OutputWithContext

func (o QuotaV2Output) ToQuotaV2OutputWithContext(ctx context.Context) QuotaV2Output

type QuotaV2State

type QuotaV2State struct {
	// Quota value for floating IPs. Changing this updates the
	// existing quota.
	Floatingip pulumi.IntPtrInput
	// Quota value for networks. Changing this updates the
	// existing quota.
	Network pulumi.IntPtrInput
	// Quota value for ports. Changing this updates the
	// existing quota.
	Port pulumi.IntPtrInput
	// ID of the project to manage quota. Changing this
	// creates new quota.
	ProjectId pulumi.StringPtrInput
	// Quota value for RBAC policies.
	// Changing this updates the existing quota.
	RbacPolicy pulumi.IntPtrInput
	// The region in which to create the quota. If
	// omitted, the `region` argument of the provider is used. Changing this
	// creates new quota.
	Region pulumi.StringPtrInput
	// Quota value for routers. Changing this updates the
	// existing quota.
	Router pulumi.IntPtrInput
	// Quota value for security groups. Changing
	// this updates the existing quota.
	SecurityGroup pulumi.IntPtrInput
	// Quota value for security group rules.
	// Changing this updates the existing quota.
	SecurityGroupRule pulumi.IntPtrInput
	// Quota value for subnets. Changing
	// this updates the existing quota.
	Subnet pulumi.IntPtrInput
	// Quota value for subnetpools.
	// Changing this updates the existing quota.
	Subnetpool pulumi.IntPtrInput
}

func (QuotaV2State) ElementType

func (QuotaV2State) ElementType() reflect.Type

type RbacPolicyV2

type RbacPolicyV2 struct {
	pulumi.CustomResourceState

	// Action for the RBAC policy. Can either be
	// `accessAsExternal` or `accessAsShared`.
	Action pulumi.StringOutput `pulumi:"action"`
	// The ID of the `objectType` resource. An
	// `objectType` of `network` returns a network ID and an `objectType` of
	// `qosPolicy` returns a QoS ID.
	ObjectId pulumi.StringOutput `pulumi:"objectId"`
	// The type of the object that the RBAC policy
	// affects. Can be one of the following: `addressScope`, `addressGroup`,
	// `network`, `qosPolicy`, `securityGroup` or `subnetpool`.
	ObjectType pulumi.StringOutput `pulumi:"objectType"`
	ProjectId  pulumi.StringOutput `pulumi:"projectId"`
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to configure a routing entry on a subnet. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// routing entry.
	Region pulumi.StringOutput `pulumi:"region"`
	// The ID of the tenant to which the RBAC policy
	// will be enforced.
	TargetTenant pulumi.StringOutput `pulumi:"targetTenant"`
}

The RBAC policy resource contains functionality for working with Neutron RBAC Policies. Role-Based Access Control (RBAC) policy framework enables both operators and users to grant access to resources for specific projects.

Sharing an object with a specific project is accomplished by creating a policy entry that permits the target project the `accessAsShared` action on that object.

To make a network available as an external network for specific projects rather than all projects, use the `accessAsExternal` action. If a network is marked as external during creation, it now implicitly creates a wildcard RBAC policy granting everyone access to preserve previous behavior before this feature was added.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewRbacPolicyV2(ctx, "rbacPolicy1", &networking.RbacPolicyV2Args{
			Action:       pulumi.String("access_as_shared"),
			ObjectId:     network1.ID(),
			ObjectType:   pulumi.String("network"),
			TargetTenant: pulumi.String("20415a973c9e45d3917f078950644697"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

RBAC policies can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/rbacPolicyV2:RbacPolicyV2 rbac_policy_1 eae26a3e-1c33-4cc1-9c31-0cd729c438a1 ```

func GetRbacPolicyV2

func GetRbacPolicyV2(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RbacPolicyV2State, opts ...pulumi.ResourceOption) (*RbacPolicyV2, error)

GetRbacPolicyV2 gets an existing RbacPolicyV2 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 NewRbacPolicyV2

func NewRbacPolicyV2(ctx *pulumi.Context,
	name string, args *RbacPolicyV2Args, opts ...pulumi.ResourceOption) (*RbacPolicyV2, error)

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

func (*RbacPolicyV2) ElementType

func (*RbacPolicyV2) ElementType() reflect.Type

func (*RbacPolicyV2) ToRbacPolicyV2Output

func (i *RbacPolicyV2) ToRbacPolicyV2Output() RbacPolicyV2Output

func (*RbacPolicyV2) ToRbacPolicyV2OutputWithContext

func (i *RbacPolicyV2) ToRbacPolicyV2OutputWithContext(ctx context.Context) RbacPolicyV2Output

type RbacPolicyV2Args

type RbacPolicyV2Args struct {
	// Action for the RBAC policy. Can either be
	// `accessAsExternal` or `accessAsShared`.
	Action pulumi.StringInput
	// The ID of the `objectType` resource. An
	// `objectType` of `network` returns a network ID and an `objectType` of
	// `qosPolicy` returns a QoS ID.
	ObjectId pulumi.StringInput
	// The type of the object that the RBAC policy
	// affects. Can be one of the following: `addressScope`, `addressGroup`,
	// `network`, `qosPolicy`, `securityGroup` or `subnetpool`.
	ObjectType pulumi.StringInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to configure a routing entry on a subnet. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// routing entry.
	Region pulumi.StringPtrInput
	// The ID of the tenant to which the RBAC policy
	// will be enforced.
	TargetTenant pulumi.StringInput
}

The set of arguments for constructing a RbacPolicyV2 resource.

func (RbacPolicyV2Args) ElementType

func (RbacPolicyV2Args) ElementType() reflect.Type

type RbacPolicyV2Array

type RbacPolicyV2Array []RbacPolicyV2Input

func (RbacPolicyV2Array) ElementType

func (RbacPolicyV2Array) ElementType() reflect.Type

func (RbacPolicyV2Array) ToRbacPolicyV2ArrayOutput

func (i RbacPolicyV2Array) ToRbacPolicyV2ArrayOutput() RbacPolicyV2ArrayOutput

func (RbacPolicyV2Array) ToRbacPolicyV2ArrayOutputWithContext

func (i RbacPolicyV2Array) ToRbacPolicyV2ArrayOutputWithContext(ctx context.Context) RbacPolicyV2ArrayOutput

type RbacPolicyV2ArrayInput

type RbacPolicyV2ArrayInput interface {
	pulumi.Input

	ToRbacPolicyV2ArrayOutput() RbacPolicyV2ArrayOutput
	ToRbacPolicyV2ArrayOutputWithContext(context.Context) RbacPolicyV2ArrayOutput
}

RbacPolicyV2ArrayInput is an input type that accepts RbacPolicyV2Array and RbacPolicyV2ArrayOutput values. You can construct a concrete instance of `RbacPolicyV2ArrayInput` via:

RbacPolicyV2Array{ RbacPolicyV2Args{...} }

type RbacPolicyV2ArrayOutput

type RbacPolicyV2ArrayOutput struct{ *pulumi.OutputState }

func (RbacPolicyV2ArrayOutput) ElementType

func (RbacPolicyV2ArrayOutput) ElementType() reflect.Type

func (RbacPolicyV2ArrayOutput) Index

func (RbacPolicyV2ArrayOutput) ToRbacPolicyV2ArrayOutput

func (o RbacPolicyV2ArrayOutput) ToRbacPolicyV2ArrayOutput() RbacPolicyV2ArrayOutput

func (RbacPolicyV2ArrayOutput) ToRbacPolicyV2ArrayOutputWithContext

func (o RbacPolicyV2ArrayOutput) ToRbacPolicyV2ArrayOutputWithContext(ctx context.Context) RbacPolicyV2ArrayOutput

type RbacPolicyV2Input

type RbacPolicyV2Input interface {
	pulumi.Input

	ToRbacPolicyV2Output() RbacPolicyV2Output
	ToRbacPolicyV2OutputWithContext(ctx context.Context) RbacPolicyV2Output
}

type RbacPolicyV2Map

type RbacPolicyV2Map map[string]RbacPolicyV2Input

func (RbacPolicyV2Map) ElementType

func (RbacPolicyV2Map) ElementType() reflect.Type

func (RbacPolicyV2Map) ToRbacPolicyV2MapOutput

func (i RbacPolicyV2Map) ToRbacPolicyV2MapOutput() RbacPolicyV2MapOutput

func (RbacPolicyV2Map) ToRbacPolicyV2MapOutputWithContext

func (i RbacPolicyV2Map) ToRbacPolicyV2MapOutputWithContext(ctx context.Context) RbacPolicyV2MapOutput

type RbacPolicyV2MapInput

type RbacPolicyV2MapInput interface {
	pulumi.Input

	ToRbacPolicyV2MapOutput() RbacPolicyV2MapOutput
	ToRbacPolicyV2MapOutputWithContext(context.Context) RbacPolicyV2MapOutput
}

RbacPolicyV2MapInput is an input type that accepts RbacPolicyV2Map and RbacPolicyV2MapOutput values. You can construct a concrete instance of `RbacPolicyV2MapInput` via:

RbacPolicyV2Map{ "key": RbacPolicyV2Args{...} }

type RbacPolicyV2MapOutput

type RbacPolicyV2MapOutput struct{ *pulumi.OutputState }

func (RbacPolicyV2MapOutput) ElementType

func (RbacPolicyV2MapOutput) ElementType() reflect.Type

func (RbacPolicyV2MapOutput) MapIndex

func (RbacPolicyV2MapOutput) ToRbacPolicyV2MapOutput

func (o RbacPolicyV2MapOutput) ToRbacPolicyV2MapOutput() RbacPolicyV2MapOutput

func (RbacPolicyV2MapOutput) ToRbacPolicyV2MapOutputWithContext

func (o RbacPolicyV2MapOutput) ToRbacPolicyV2MapOutputWithContext(ctx context.Context) RbacPolicyV2MapOutput

type RbacPolicyV2Output

type RbacPolicyV2Output struct{ *pulumi.OutputState }

func (RbacPolicyV2Output) Action added in v3.9.0

Action for the RBAC policy. Can either be `accessAsExternal` or `accessAsShared`.

func (RbacPolicyV2Output) ElementType

func (RbacPolicyV2Output) ElementType() reflect.Type

func (RbacPolicyV2Output) ObjectId added in v3.9.0

func (o RbacPolicyV2Output) ObjectId() pulumi.StringOutput

The ID of the `objectType` resource. An `objectType` of `network` returns a network ID and an `objectType` of `qosPolicy` returns a QoS ID.

func (RbacPolicyV2Output) ObjectType added in v3.9.0

func (o RbacPolicyV2Output) ObjectType() pulumi.StringOutput

The type of the object that the RBAC policy affects. Can be one of the following: `addressScope`, `addressGroup`, `network`, `qosPolicy`, `securityGroup` or `subnetpool`.

func (RbacPolicyV2Output) ProjectId added in v3.9.0

func (o RbacPolicyV2Output) ProjectId() pulumi.StringOutput

func (RbacPolicyV2Output) Region added in v3.9.0

The region in which to obtain the V2 networking client. A networking client is needed to configure a routing entry on a subnet. If omitted, the `region` argument of the provider is used. Changing this creates a new routing entry.

func (RbacPolicyV2Output) TargetTenant added in v3.9.0

func (o RbacPolicyV2Output) TargetTenant() pulumi.StringOutput

The ID of the tenant to which the RBAC policy will be enforced.

func (RbacPolicyV2Output) ToRbacPolicyV2Output

func (o RbacPolicyV2Output) ToRbacPolicyV2Output() RbacPolicyV2Output

func (RbacPolicyV2Output) ToRbacPolicyV2OutputWithContext

func (o RbacPolicyV2Output) ToRbacPolicyV2OutputWithContext(ctx context.Context) RbacPolicyV2Output

type RbacPolicyV2State

type RbacPolicyV2State struct {
	// Action for the RBAC policy. Can either be
	// `accessAsExternal` or `accessAsShared`.
	Action pulumi.StringPtrInput
	// The ID of the `objectType` resource. An
	// `objectType` of `network` returns a network ID and an `objectType` of
	// `qosPolicy` returns a QoS ID.
	ObjectId pulumi.StringPtrInput
	// The type of the object that the RBAC policy
	// affects. Can be one of the following: `addressScope`, `addressGroup`,
	// `network`, `qosPolicy`, `securityGroup` or `subnetpool`.
	ObjectType pulumi.StringPtrInput
	ProjectId  pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to configure a routing entry on a subnet. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// routing entry.
	Region pulumi.StringPtrInput
	// The ID of the tenant to which the RBAC policy
	// will be enforced.
	TargetTenant pulumi.StringPtrInput
}

func (RbacPolicyV2State) ElementType

func (RbacPolicyV2State) ElementType() reflect.Type

type Router

type Router struct {
	pulumi.CustomResourceState

	// Administrative up/down status for the router
	// (must be "true" or "false" if provided). Changing this updates the
	// `adminStateUp` of an existing router.
	AdminStateUp pulumi.BoolOutput `pulumi:"adminStateUp"`
	// The collection of tags assigned on the router, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayOutput `pulumi:"allTags"`
	// An availability zone is used to make
	// network resources highly available. Used for resources with high availability
	// so that they are scheduled on different availability zones. Changing this
	// creates a new router.
	AvailabilityZoneHints pulumi.StringArrayOutput `pulumi:"availabilityZoneHints"`
	// Human-readable description for the router.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Indicates whether or not to create a
	// distributed router. The default policy setting in Neutron restricts
	// usage of this property to administrative users only.
	Distributed pulumi.BoolOutput `pulumi:"distributed"`
	// Enable Source NAT for the router. Valid values are
	// "true" or "false". An `externalNetworkId` has to be set in order to
	// set this property. Changing this updates the `enableSnat` of the router.
	// Setting this value **requires** an **ext-gw-mode** extension to be enabled
	// in OpenStack Neutron.
	EnableSnat pulumi.BoolOutput `pulumi:"enableSnat"`
	// An external fixed IP for the router. This
	// can be repeated. The structure is described below. An `externalNetworkId`
	// has to be set in order to set this property. Changing this updates the
	// external fixed IPs of the router.
	ExternalFixedIps RouterExternalFixedIpArrayOutput `pulumi:"externalFixedIps"`
	// The
	// network UUID of an external gateway for the router. A router with an
	// external gateway is required if any compute instances or load balancers
	// will be using floating IPs. Changing this updates the external gateway
	// of an existing router.
	//
	// Deprecated: use externalNetworkId instead
	ExternalGateway pulumi.StringOutput `pulumi:"externalGateway"`
	// The network UUID of an external gateway
	// for the router. A router with an external gateway is required if any
	// compute instances or load balancers will be using floating IPs. Changing
	// this updates the external gateway of the router.
	ExternalNetworkId pulumi.StringOutput `pulumi:"externalNetworkId"`
	// A list of external subnet IDs to try over
	// each to obtain a fixed IP for the router. If a subnet ID in a list has
	// exhausted floating IP pool, the next subnet ID will be tried. This argument is
	// used only during the router creation and allows to set only one external fixed
	// IP. Conflicts with an `externalFixedIp` argument.
	ExternalSubnetIds pulumi.StringArrayOutput `pulumi:"externalSubnetIds"`
	// A unique name for the router. Changing this
	// updates the `name` of an existing router.
	Name pulumi.StringOutput `pulumi:"name"`
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a router. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// router.
	Region pulumi.StringOutput `pulumi:"region"`
	// A set of string tags for the router.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// The owner of the floating IP. Required if admin wants
	// to create a router for another tenant. Changing this creates a new router.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
	// Map of additional driver-specific options.
	ValueSpecs pulumi.MapOutput `pulumi:"valueSpecs"`
	// Map of additional vendor-specific options.
	// Supported options are described below.
	VendorOptions RouterVendorOptionsPtrOutput `pulumi:"vendorOptions"`
}

Manages a V2 router resource within OpenStack.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.NewRouter(ctx, "router1", &networking.RouterArgs{
			AdminStateUp:      pulumi.Bool(true),
			ExternalNetworkId: pulumi.String("f67f0d72-0ddf-11e4-9d95-e1f29f417e2f"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Routers can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/router:Router router_1 014395cd-89fc-4c9b-96b7-13d1ee79dad2 ```

func GetRouter

func GetRouter(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouterState, opts ...pulumi.ResourceOption) (*Router, error)

GetRouter gets an existing Router 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 NewRouter

func NewRouter(ctx *pulumi.Context,
	name string, args *RouterArgs, opts ...pulumi.ResourceOption) (*Router, error)

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

func (*Router) ElementType

func (*Router) ElementType() reflect.Type

func (*Router) ToRouterOutput

func (i *Router) ToRouterOutput() RouterOutput

func (*Router) ToRouterOutputWithContext

func (i *Router) ToRouterOutputWithContext(ctx context.Context) RouterOutput

type RouterArgs

type RouterArgs struct {
	// Administrative up/down status for the router
	// (must be "true" or "false" if provided). Changing this updates the
	// `adminStateUp` of an existing router.
	AdminStateUp pulumi.BoolPtrInput
	// An availability zone is used to make
	// network resources highly available. Used for resources with high availability
	// so that they are scheduled on different availability zones. Changing this
	// creates a new router.
	AvailabilityZoneHints pulumi.StringArrayInput
	// Human-readable description for the router.
	Description pulumi.StringPtrInput
	// Indicates whether or not to create a
	// distributed router. The default policy setting in Neutron restricts
	// usage of this property to administrative users only.
	Distributed pulumi.BoolPtrInput
	// Enable Source NAT for the router. Valid values are
	// "true" or "false". An `externalNetworkId` has to be set in order to
	// set this property. Changing this updates the `enableSnat` of the router.
	// Setting this value **requires** an **ext-gw-mode** extension to be enabled
	// in OpenStack Neutron.
	EnableSnat pulumi.BoolPtrInput
	// An external fixed IP for the router. This
	// can be repeated. The structure is described below. An `externalNetworkId`
	// has to be set in order to set this property. Changing this updates the
	// external fixed IPs of the router.
	ExternalFixedIps RouterExternalFixedIpArrayInput
	// The
	// network UUID of an external gateway for the router. A router with an
	// external gateway is required if any compute instances or load balancers
	// will be using floating IPs. Changing this updates the external gateway
	// of an existing router.
	//
	// Deprecated: use externalNetworkId instead
	ExternalGateway pulumi.StringPtrInput
	// The network UUID of an external gateway
	// for the router. A router with an external gateway is required if any
	// compute instances or load balancers will be using floating IPs. Changing
	// this updates the external gateway of the router.
	ExternalNetworkId pulumi.StringPtrInput
	// A list of external subnet IDs to try over
	// each to obtain a fixed IP for the router. If a subnet ID in a list has
	// exhausted floating IP pool, the next subnet ID will be tried. This argument is
	// used only during the router creation and allows to set only one external fixed
	// IP. Conflicts with an `externalFixedIp` argument.
	ExternalSubnetIds pulumi.StringArrayInput
	// A unique name for the router. Changing this
	// updates the `name` of an existing router.
	Name pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a router. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// router.
	Region pulumi.StringPtrInput
	// A set of string tags for the router.
	Tags pulumi.StringArrayInput
	// The owner of the floating IP. Required if admin wants
	// to create a router for another tenant. Changing this creates a new router.
	TenantId pulumi.StringPtrInput
	// Map of additional driver-specific options.
	ValueSpecs pulumi.MapInput
	// Map of additional vendor-specific options.
	// Supported options are described below.
	VendorOptions RouterVendorOptionsPtrInput
}

The set of arguments for constructing a Router resource.

func (RouterArgs) ElementType

func (RouterArgs) ElementType() reflect.Type

type RouterArray

type RouterArray []RouterInput

func (RouterArray) ElementType

func (RouterArray) ElementType() reflect.Type

func (RouterArray) ToRouterArrayOutput

func (i RouterArray) ToRouterArrayOutput() RouterArrayOutput

func (RouterArray) ToRouterArrayOutputWithContext

func (i RouterArray) ToRouterArrayOutputWithContext(ctx context.Context) RouterArrayOutput

type RouterArrayInput

type RouterArrayInput interface {
	pulumi.Input

	ToRouterArrayOutput() RouterArrayOutput
	ToRouterArrayOutputWithContext(context.Context) RouterArrayOutput
}

RouterArrayInput is an input type that accepts RouterArray and RouterArrayOutput values. You can construct a concrete instance of `RouterArrayInput` via:

RouterArray{ RouterArgs{...} }

type RouterArrayOutput

type RouterArrayOutput struct{ *pulumi.OutputState }

func (RouterArrayOutput) ElementType

func (RouterArrayOutput) ElementType() reflect.Type

func (RouterArrayOutput) Index

func (RouterArrayOutput) ToRouterArrayOutput

func (o RouterArrayOutput) ToRouterArrayOutput() RouterArrayOutput

func (RouterArrayOutput) ToRouterArrayOutputWithContext

func (o RouterArrayOutput) ToRouterArrayOutputWithContext(ctx context.Context) RouterArrayOutput

type RouterExternalFixedIp

type RouterExternalFixedIp struct {
	// The IP address to set on the router.
	IpAddress *string `pulumi:"ipAddress"`
	// Subnet in which the fixed IP belongs to.
	SubnetId *string `pulumi:"subnetId"`
}

type RouterExternalFixedIpArgs

type RouterExternalFixedIpArgs struct {
	// The IP address to set on the router.
	IpAddress pulumi.StringPtrInput `pulumi:"ipAddress"`
	// Subnet in which the fixed IP belongs to.
	SubnetId pulumi.StringPtrInput `pulumi:"subnetId"`
}

func (RouterExternalFixedIpArgs) ElementType

func (RouterExternalFixedIpArgs) ElementType() reflect.Type

func (RouterExternalFixedIpArgs) ToRouterExternalFixedIpOutput

func (i RouterExternalFixedIpArgs) ToRouterExternalFixedIpOutput() RouterExternalFixedIpOutput

func (RouterExternalFixedIpArgs) ToRouterExternalFixedIpOutputWithContext

func (i RouterExternalFixedIpArgs) ToRouterExternalFixedIpOutputWithContext(ctx context.Context) RouterExternalFixedIpOutput

type RouterExternalFixedIpArray

type RouterExternalFixedIpArray []RouterExternalFixedIpInput

func (RouterExternalFixedIpArray) ElementType

func (RouterExternalFixedIpArray) ElementType() reflect.Type

func (RouterExternalFixedIpArray) ToRouterExternalFixedIpArrayOutput

func (i RouterExternalFixedIpArray) ToRouterExternalFixedIpArrayOutput() RouterExternalFixedIpArrayOutput

func (RouterExternalFixedIpArray) ToRouterExternalFixedIpArrayOutputWithContext

func (i RouterExternalFixedIpArray) ToRouterExternalFixedIpArrayOutputWithContext(ctx context.Context) RouterExternalFixedIpArrayOutput

type RouterExternalFixedIpArrayInput

type RouterExternalFixedIpArrayInput interface {
	pulumi.Input

	ToRouterExternalFixedIpArrayOutput() RouterExternalFixedIpArrayOutput
	ToRouterExternalFixedIpArrayOutputWithContext(context.Context) RouterExternalFixedIpArrayOutput
}

RouterExternalFixedIpArrayInput is an input type that accepts RouterExternalFixedIpArray and RouterExternalFixedIpArrayOutput values. You can construct a concrete instance of `RouterExternalFixedIpArrayInput` via:

RouterExternalFixedIpArray{ RouterExternalFixedIpArgs{...} }

type RouterExternalFixedIpArrayOutput

type RouterExternalFixedIpArrayOutput struct{ *pulumi.OutputState }

func (RouterExternalFixedIpArrayOutput) ElementType

func (RouterExternalFixedIpArrayOutput) Index

func (RouterExternalFixedIpArrayOutput) ToRouterExternalFixedIpArrayOutput

func (o RouterExternalFixedIpArrayOutput) ToRouterExternalFixedIpArrayOutput() RouterExternalFixedIpArrayOutput

func (RouterExternalFixedIpArrayOutput) ToRouterExternalFixedIpArrayOutputWithContext

func (o RouterExternalFixedIpArrayOutput) ToRouterExternalFixedIpArrayOutputWithContext(ctx context.Context) RouterExternalFixedIpArrayOutput

type RouterExternalFixedIpInput

type RouterExternalFixedIpInput interface {
	pulumi.Input

	ToRouterExternalFixedIpOutput() RouterExternalFixedIpOutput
	ToRouterExternalFixedIpOutputWithContext(context.Context) RouterExternalFixedIpOutput
}

RouterExternalFixedIpInput is an input type that accepts RouterExternalFixedIpArgs and RouterExternalFixedIpOutput values. You can construct a concrete instance of `RouterExternalFixedIpInput` via:

RouterExternalFixedIpArgs{...}

type RouterExternalFixedIpOutput

type RouterExternalFixedIpOutput struct{ *pulumi.OutputState }

func (RouterExternalFixedIpOutput) ElementType

func (RouterExternalFixedIpOutput) IpAddress

The IP address to set on the router.

func (RouterExternalFixedIpOutput) SubnetId

Subnet in which the fixed IP belongs to.

func (RouterExternalFixedIpOutput) ToRouterExternalFixedIpOutput

func (o RouterExternalFixedIpOutput) ToRouterExternalFixedIpOutput() RouterExternalFixedIpOutput

func (RouterExternalFixedIpOutput) ToRouterExternalFixedIpOutputWithContext

func (o RouterExternalFixedIpOutput) ToRouterExternalFixedIpOutputWithContext(ctx context.Context) RouterExternalFixedIpOutput

type RouterInput

type RouterInput interface {
	pulumi.Input

	ToRouterOutput() RouterOutput
	ToRouterOutputWithContext(ctx context.Context) RouterOutput
}

type RouterInterface

type RouterInterface struct {
	pulumi.CustomResourceState

	// A boolean indicating whether the routes from the
	// corresponding router ID should be deleted so that the router interface can
	// be destroyed without any errors. The default value is `false`.
	ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"`
	// ID of the port this interface connects to. Changing
	// this creates a new router interface.
	PortId pulumi.StringOutput `pulumi:"portId"`
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a router. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// router interface.
	Region pulumi.StringOutput `pulumi:"region"`
	// ID of the router this interface belongs to. Changing
	// this creates a new router interface.
	RouterId pulumi.StringOutput `pulumi:"routerId"`
	// ID of the subnet this interface connects to. Changing
	// this creates a new router interface.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
}

Manages a V2 router interface resource within OpenStack.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		subnet1, err := networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{
			NetworkId: network1.ID(),
			Cidr:      pulumi.String("192.168.199.0/24"),
			IpVersion: pulumi.Int(4),
		})
		if err != nil {
			return err
		}
		router1, err := networking.NewRouter(ctx, "router1", &networking.RouterArgs{
			ExternalNetworkId: pulumi.String("f67f0d72-0ddf-11e4-9d95-e1f29f417e2f"),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewRouterInterface(ctx, "routerInterface1", &networking.RouterInterfaceArgs{
			RouterId: router1.ID(),
			SubnetId: subnet1.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Router Interfaces can be imported using the port `id`, e.g.

$ openstack port list --router <router name or id>

```sh $ pulumi import openstack:networking/routerInterface:RouterInterface int_1 port_id ```

func GetRouterInterface

func GetRouterInterface(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouterInterfaceState, opts ...pulumi.ResourceOption) (*RouterInterface, error)

GetRouterInterface gets an existing RouterInterface 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 NewRouterInterface

func NewRouterInterface(ctx *pulumi.Context,
	name string, args *RouterInterfaceArgs, opts ...pulumi.ResourceOption) (*RouterInterface, error)

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

func (*RouterInterface) ElementType

func (*RouterInterface) ElementType() reflect.Type

func (*RouterInterface) ToRouterInterfaceOutput

func (i *RouterInterface) ToRouterInterfaceOutput() RouterInterfaceOutput

func (*RouterInterface) ToRouterInterfaceOutputWithContext

func (i *RouterInterface) ToRouterInterfaceOutputWithContext(ctx context.Context) RouterInterfaceOutput

type RouterInterfaceArgs

type RouterInterfaceArgs struct {
	// A boolean indicating whether the routes from the
	// corresponding router ID should be deleted so that the router interface can
	// be destroyed without any errors. The default value is `false`.
	ForceDestroy pulumi.BoolPtrInput
	// ID of the port this interface connects to. Changing
	// this creates a new router interface.
	PortId pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a router. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// router interface.
	Region pulumi.StringPtrInput
	// ID of the router this interface belongs to. Changing
	// this creates a new router interface.
	RouterId pulumi.StringInput
	// ID of the subnet this interface connects to. Changing
	// this creates a new router interface.
	SubnetId pulumi.StringPtrInput
}

The set of arguments for constructing a RouterInterface resource.

func (RouterInterfaceArgs) ElementType

func (RouterInterfaceArgs) ElementType() reflect.Type

type RouterInterfaceArray

type RouterInterfaceArray []RouterInterfaceInput

func (RouterInterfaceArray) ElementType

func (RouterInterfaceArray) ElementType() reflect.Type

func (RouterInterfaceArray) ToRouterInterfaceArrayOutput

func (i RouterInterfaceArray) ToRouterInterfaceArrayOutput() RouterInterfaceArrayOutput

func (RouterInterfaceArray) ToRouterInterfaceArrayOutputWithContext

func (i RouterInterfaceArray) ToRouterInterfaceArrayOutputWithContext(ctx context.Context) RouterInterfaceArrayOutput

type RouterInterfaceArrayInput

type RouterInterfaceArrayInput interface {
	pulumi.Input

	ToRouterInterfaceArrayOutput() RouterInterfaceArrayOutput
	ToRouterInterfaceArrayOutputWithContext(context.Context) RouterInterfaceArrayOutput
}

RouterInterfaceArrayInput is an input type that accepts RouterInterfaceArray and RouterInterfaceArrayOutput values. You can construct a concrete instance of `RouterInterfaceArrayInput` via:

RouterInterfaceArray{ RouterInterfaceArgs{...} }

type RouterInterfaceArrayOutput

type RouterInterfaceArrayOutput struct{ *pulumi.OutputState }

func (RouterInterfaceArrayOutput) ElementType

func (RouterInterfaceArrayOutput) ElementType() reflect.Type

func (RouterInterfaceArrayOutput) Index

func (RouterInterfaceArrayOutput) ToRouterInterfaceArrayOutput

func (o RouterInterfaceArrayOutput) ToRouterInterfaceArrayOutput() RouterInterfaceArrayOutput

func (RouterInterfaceArrayOutput) ToRouterInterfaceArrayOutputWithContext

func (o RouterInterfaceArrayOutput) ToRouterInterfaceArrayOutputWithContext(ctx context.Context) RouterInterfaceArrayOutput

type RouterInterfaceInput

type RouterInterfaceInput interface {
	pulumi.Input

	ToRouterInterfaceOutput() RouterInterfaceOutput
	ToRouterInterfaceOutputWithContext(ctx context.Context) RouterInterfaceOutput
}

type RouterInterfaceMap

type RouterInterfaceMap map[string]RouterInterfaceInput

func (RouterInterfaceMap) ElementType

func (RouterInterfaceMap) ElementType() reflect.Type

func (RouterInterfaceMap) ToRouterInterfaceMapOutput

func (i RouterInterfaceMap) ToRouterInterfaceMapOutput() RouterInterfaceMapOutput

func (RouterInterfaceMap) ToRouterInterfaceMapOutputWithContext

func (i RouterInterfaceMap) ToRouterInterfaceMapOutputWithContext(ctx context.Context) RouterInterfaceMapOutput

type RouterInterfaceMapInput

type RouterInterfaceMapInput interface {
	pulumi.Input

	ToRouterInterfaceMapOutput() RouterInterfaceMapOutput
	ToRouterInterfaceMapOutputWithContext(context.Context) RouterInterfaceMapOutput
}

RouterInterfaceMapInput is an input type that accepts RouterInterfaceMap and RouterInterfaceMapOutput values. You can construct a concrete instance of `RouterInterfaceMapInput` via:

RouterInterfaceMap{ "key": RouterInterfaceArgs{...} }

type RouterInterfaceMapOutput

type RouterInterfaceMapOutput struct{ *pulumi.OutputState }

func (RouterInterfaceMapOutput) ElementType

func (RouterInterfaceMapOutput) ElementType() reflect.Type

func (RouterInterfaceMapOutput) MapIndex

func (RouterInterfaceMapOutput) ToRouterInterfaceMapOutput

func (o RouterInterfaceMapOutput) ToRouterInterfaceMapOutput() RouterInterfaceMapOutput

func (RouterInterfaceMapOutput) ToRouterInterfaceMapOutputWithContext

func (o RouterInterfaceMapOutput) ToRouterInterfaceMapOutputWithContext(ctx context.Context) RouterInterfaceMapOutput

type RouterInterfaceOutput

type RouterInterfaceOutput struct{ *pulumi.OutputState }

func (RouterInterfaceOutput) ElementType

func (RouterInterfaceOutput) ElementType() reflect.Type

func (RouterInterfaceOutput) ForceDestroy added in v3.12.0

func (o RouterInterfaceOutput) ForceDestroy() pulumi.BoolPtrOutput

A boolean indicating whether the routes from the corresponding router ID should be deleted so that the router interface can be destroyed without any errors. The default value is `false`.

func (RouterInterfaceOutput) PortId added in v3.9.0

ID of the port this interface connects to. Changing this creates a new router interface.

func (RouterInterfaceOutput) Region added in v3.9.0

The region in which to obtain the V2 networking client. A networking client is needed to create a router. If omitted, the `region` argument of the provider is used. Changing this creates a new router interface.

func (RouterInterfaceOutput) RouterId added in v3.9.0

ID of the router this interface belongs to. Changing this creates a new router interface.

func (RouterInterfaceOutput) SubnetId added in v3.9.0

ID of the subnet this interface connects to. Changing this creates a new router interface.

func (RouterInterfaceOutput) ToRouterInterfaceOutput

func (o RouterInterfaceOutput) ToRouterInterfaceOutput() RouterInterfaceOutput

func (RouterInterfaceOutput) ToRouterInterfaceOutputWithContext

func (o RouterInterfaceOutput) ToRouterInterfaceOutputWithContext(ctx context.Context) RouterInterfaceOutput

type RouterInterfaceState

type RouterInterfaceState struct {
	// A boolean indicating whether the routes from the
	// corresponding router ID should be deleted so that the router interface can
	// be destroyed without any errors. The default value is `false`.
	ForceDestroy pulumi.BoolPtrInput
	// ID of the port this interface connects to. Changing
	// this creates a new router interface.
	PortId pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a router. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// router interface.
	Region pulumi.StringPtrInput
	// ID of the router this interface belongs to. Changing
	// this creates a new router interface.
	RouterId pulumi.StringPtrInput
	// ID of the subnet this interface connects to. Changing
	// this creates a new router interface.
	SubnetId pulumi.StringPtrInput
}

func (RouterInterfaceState) ElementType

func (RouterInterfaceState) ElementType() reflect.Type

type RouterMap

type RouterMap map[string]RouterInput

func (RouterMap) ElementType

func (RouterMap) ElementType() reflect.Type

func (RouterMap) ToRouterMapOutput

func (i RouterMap) ToRouterMapOutput() RouterMapOutput

func (RouterMap) ToRouterMapOutputWithContext

func (i RouterMap) ToRouterMapOutputWithContext(ctx context.Context) RouterMapOutput

type RouterMapInput

type RouterMapInput interface {
	pulumi.Input

	ToRouterMapOutput() RouterMapOutput
	ToRouterMapOutputWithContext(context.Context) RouterMapOutput
}

RouterMapInput is an input type that accepts RouterMap and RouterMapOutput values. You can construct a concrete instance of `RouterMapInput` via:

RouterMap{ "key": RouterArgs{...} }

type RouterMapOutput

type RouterMapOutput struct{ *pulumi.OutputState }

func (RouterMapOutput) ElementType

func (RouterMapOutput) ElementType() reflect.Type

func (RouterMapOutput) MapIndex

func (RouterMapOutput) ToRouterMapOutput

func (o RouterMapOutput) ToRouterMapOutput() RouterMapOutput

func (RouterMapOutput) ToRouterMapOutputWithContext

func (o RouterMapOutput) ToRouterMapOutputWithContext(ctx context.Context) RouterMapOutput

type RouterOutput

type RouterOutput struct{ *pulumi.OutputState }

func (RouterOutput) AdminStateUp added in v3.9.0

func (o RouterOutput) AdminStateUp() pulumi.BoolOutput

Administrative up/down status for the router (must be "true" or "false" if provided). Changing this updates the `adminStateUp` of an existing router.

func (RouterOutput) AllTags added in v3.9.0

The collection of tags assigned on the router, which have been explicitly and implicitly added.

func (RouterOutput) AvailabilityZoneHints added in v3.9.0

func (o RouterOutput) AvailabilityZoneHints() pulumi.StringArrayOutput

An availability zone is used to make network resources highly available. Used for resources with high availability so that they are scheduled on different availability zones. Changing this creates a new router.

func (RouterOutput) Description added in v3.9.0

func (o RouterOutput) Description() pulumi.StringPtrOutput

Human-readable description for the router.

func (RouterOutput) Distributed added in v3.9.0

func (o RouterOutput) Distributed() pulumi.BoolOutput

Indicates whether or not to create a distributed router. The default policy setting in Neutron restricts usage of this property to administrative users only.

func (RouterOutput) ElementType

func (RouterOutput) ElementType() reflect.Type

func (RouterOutput) EnableSnat added in v3.9.0

func (o RouterOutput) EnableSnat() pulumi.BoolOutput

Enable Source NAT for the router. Valid values are "true" or "false". An `externalNetworkId` has to be set in order to set this property. Changing this updates the `enableSnat` of the router. Setting this value **requires** an **ext-gw-mode** extension to be enabled in OpenStack Neutron.

func (RouterOutput) ExternalFixedIps added in v3.9.0

func (o RouterOutput) ExternalFixedIps() RouterExternalFixedIpArrayOutput

An external fixed IP for the router. This can be repeated. The structure is described below. An `externalNetworkId` has to be set in order to set this property. Changing this updates the external fixed IPs of the router.

func (RouterOutput) ExternalGateway deprecated added in v3.9.0

func (o RouterOutput) ExternalGateway() pulumi.StringOutput

The network UUID of an external gateway for the router. A router with an external gateway is required if any compute instances or load balancers will be using floating IPs. Changing this updates the external gateway of an existing router.

Deprecated: use externalNetworkId instead

func (RouterOutput) ExternalNetworkId added in v3.9.0

func (o RouterOutput) ExternalNetworkId() pulumi.StringOutput

The network UUID of an external gateway for the router. A router with an external gateway is required if any compute instances or load balancers will be using floating IPs. Changing this updates the external gateway of the router.

func (RouterOutput) ExternalSubnetIds added in v3.9.0

func (o RouterOutput) ExternalSubnetIds() pulumi.StringArrayOutput

A list of external subnet IDs to try over each to obtain a fixed IP for the router. If a subnet ID in a list has exhausted floating IP pool, the next subnet ID will be tried. This argument is used only during the router creation and allows to set only one external fixed IP. Conflicts with an `externalFixedIp` argument.

func (RouterOutput) Name added in v3.9.0

func (o RouterOutput) Name() pulumi.StringOutput

A unique name for the router. Changing this updates the `name` of an existing router.

func (RouterOutput) Region added in v3.9.0

func (o RouterOutput) Region() pulumi.StringOutput

The region in which to obtain the V2 networking client. A networking client is needed to create a router. If omitted, the `region` argument of the provider is used. Changing this creates a new router.

func (RouterOutput) Tags added in v3.9.0

A set of string tags for the router.

func (RouterOutput) TenantId added in v3.9.0

func (o RouterOutput) TenantId() pulumi.StringOutput

The owner of the floating IP. Required if admin wants to create a router for another tenant. Changing this creates a new router.

func (RouterOutput) ToRouterOutput

func (o RouterOutput) ToRouterOutput() RouterOutput

func (RouterOutput) ToRouterOutputWithContext

func (o RouterOutput) ToRouterOutputWithContext(ctx context.Context) RouterOutput

func (RouterOutput) ValueSpecs added in v3.9.0

func (o RouterOutput) ValueSpecs() pulumi.MapOutput

Map of additional driver-specific options.

func (RouterOutput) VendorOptions added in v3.9.0

func (o RouterOutput) VendorOptions() RouterVendorOptionsPtrOutput

Map of additional vendor-specific options. Supported options are described below.

type RouterRoute

type RouterRoute struct {
	pulumi.CustomResourceState

	// CIDR block to match on the packet’s destination IP. Changing
	// this creates a new routing entry.
	DestinationCidr pulumi.StringOutput `pulumi:"destinationCidr"`
	// IP address of the next hop gateway.  Changing
	// this creates a new routing entry.
	NextHop pulumi.StringOutput `pulumi:"nextHop"`
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to configure a routing entry on a router. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// routing entry.
	Region pulumi.StringOutput `pulumi:"region"`
	// ID of the router this routing entry belongs to. Changing
	// this creates a new routing entry.
	RouterId pulumi.StringOutput `pulumi:"routerId"`
}

Creates a routing entry on a OpenStack V2 router.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		router1, err := networking.NewRouter(ctx, "router1", &networking.RouterArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		subnet1, err := networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{
			NetworkId: network1.ID(),
			Cidr:      pulumi.String("192.168.199.0/24"),
			IpVersion: pulumi.Int(4),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewRouterInterface(ctx, "int1", &networking.RouterInterfaceArgs{
			RouterId: router1.ID(),
			SubnetId: subnet1.ID(),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewRouterRoute(ctx, "routerRoute1", &networking.RouterRouteArgs{
			RouterId:        router1.ID(),
			DestinationCidr: pulumi.String("10.0.1.0/24"),
			NextHop:         pulumi.String("192.168.199.254"),
		}, pulumi.DependsOn([]pulumi.Resource{
			pulumi.Resource("openstack_networking_router_interface_v2.int_1"),
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Notes

The `nextHop` IP address must be directly reachable from the router at the “networking.RouterRoute“ resource creation time. You can ensure that by explicitly specifying a dependency on the “networking.RouterInterface“ resource that connects the next hop to the router, as in the example above.

## Import

Routing entries can be imported using a combined ID using the following format: `<router_id>-route-<destination_cidr>-<next_hop>`

```sh $ pulumi import openstack:networking/routerRoute:RouterRoute router_route_1 686fe248-386c-4f70-9f6c-281607dad079-route-10.0.1.0/24-192.168.199.25 ```

func GetRouterRoute

func GetRouterRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RouterRouteState, opts ...pulumi.ResourceOption) (*RouterRoute, error)

GetRouterRoute gets an existing RouterRoute 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 NewRouterRoute

func NewRouterRoute(ctx *pulumi.Context,
	name string, args *RouterRouteArgs, opts ...pulumi.ResourceOption) (*RouterRoute, error)

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

func (*RouterRoute) ElementType

func (*RouterRoute) ElementType() reflect.Type

func (*RouterRoute) ToRouterRouteOutput

func (i *RouterRoute) ToRouterRouteOutput() RouterRouteOutput

func (*RouterRoute) ToRouterRouteOutputWithContext

func (i *RouterRoute) ToRouterRouteOutputWithContext(ctx context.Context) RouterRouteOutput

type RouterRouteArgs

type RouterRouteArgs struct {
	// CIDR block to match on the packet’s destination IP. Changing
	// this creates a new routing entry.
	DestinationCidr pulumi.StringInput
	// IP address of the next hop gateway.  Changing
	// this creates a new routing entry.
	NextHop pulumi.StringInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to configure a routing entry on a router. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// routing entry.
	Region pulumi.StringPtrInput
	// ID of the router this routing entry belongs to. Changing
	// this creates a new routing entry.
	RouterId pulumi.StringInput
}

The set of arguments for constructing a RouterRoute resource.

func (RouterRouteArgs) ElementType

func (RouterRouteArgs) ElementType() reflect.Type

type RouterRouteArray

type RouterRouteArray []RouterRouteInput

func (RouterRouteArray) ElementType

func (RouterRouteArray) ElementType() reflect.Type

func (RouterRouteArray) ToRouterRouteArrayOutput

func (i RouterRouteArray) ToRouterRouteArrayOutput() RouterRouteArrayOutput

func (RouterRouteArray) ToRouterRouteArrayOutputWithContext

func (i RouterRouteArray) ToRouterRouteArrayOutputWithContext(ctx context.Context) RouterRouteArrayOutput

type RouterRouteArrayInput

type RouterRouteArrayInput interface {
	pulumi.Input

	ToRouterRouteArrayOutput() RouterRouteArrayOutput
	ToRouterRouteArrayOutputWithContext(context.Context) RouterRouteArrayOutput
}

RouterRouteArrayInput is an input type that accepts RouterRouteArray and RouterRouteArrayOutput values. You can construct a concrete instance of `RouterRouteArrayInput` via:

RouterRouteArray{ RouterRouteArgs{...} }

type RouterRouteArrayOutput

type RouterRouteArrayOutput struct{ *pulumi.OutputState }

func (RouterRouteArrayOutput) ElementType

func (RouterRouteArrayOutput) ElementType() reflect.Type

func (RouterRouteArrayOutput) Index

func (RouterRouteArrayOutput) ToRouterRouteArrayOutput

func (o RouterRouteArrayOutput) ToRouterRouteArrayOutput() RouterRouteArrayOutput

func (RouterRouteArrayOutput) ToRouterRouteArrayOutputWithContext

func (o RouterRouteArrayOutput) ToRouterRouteArrayOutputWithContext(ctx context.Context) RouterRouteArrayOutput

type RouterRouteInput

type RouterRouteInput interface {
	pulumi.Input

	ToRouterRouteOutput() RouterRouteOutput
	ToRouterRouteOutputWithContext(ctx context.Context) RouterRouteOutput
}

type RouterRouteMap

type RouterRouteMap map[string]RouterRouteInput

func (RouterRouteMap) ElementType

func (RouterRouteMap) ElementType() reflect.Type

func (RouterRouteMap) ToRouterRouteMapOutput

func (i RouterRouteMap) ToRouterRouteMapOutput() RouterRouteMapOutput

func (RouterRouteMap) ToRouterRouteMapOutputWithContext

func (i RouterRouteMap) ToRouterRouteMapOutputWithContext(ctx context.Context) RouterRouteMapOutput

type RouterRouteMapInput

type RouterRouteMapInput interface {
	pulumi.Input

	ToRouterRouteMapOutput() RouterRouteMapOutput
	ToRouterRouteMapOutputWithContext(context.Context) RouterRouteMapOutput
}

RouterRouteMapInput is an input type that accepts RouterRouteMap and RouterRouteMapOutput values. You can construct a concrete instance of `RouterRouteMapInput` via:

RouterRouteMap{ "key": RouterRouteArgs{...} }

type RouterRouteMapOutput

type RouterRouteMapOutput struct{ *pulumi.OutputState }

func (RouterRouteMapOutput) ElementType

func (RouterRouteMapOutput) ElementType() reflect.Type

func (RouterRouteMapOutput) MapIndex

func (RouterRouteMapOutput) ToRouterRouteMapOutput

func (o RouterRouteMapOutput) ToRouterRouteMapOutput() RouterRouteMapOutput

func (RouterRouteMapOutput) ToRouterRouteMapOutputWithContext

func (o RouterRouteMapOutput) ToRouterRouteMapOutputWithContext(ctx context.Context) RouterRouteMapOutput

type RouterRouteOutput

type RouterRouteOutput struct{ *pulumi.OutputState }

func (RouterRouteOutput) DestinationCidr added in v3.9.0

func (o RouterRouteOutput) DestinationCidr() pulumi.StringOutput

CIDR block to match on the packet’s destination IP. Changing this creates a new routing entry.

func (RouterRouteOutput) ElementType

func (RouterRouteOutput) ElementType() reflect.Type

func (RouterRouteOutput) NextHop added in v3.9.0

IP address of the next hop gateway. Changing this creates a new routing entry.

func (RouterRouteOutput) Region added in v3.9.0

The region in which to obtain the V2 networking client. A networking client is needed to configure a routing entry on a router. If omitted, the `region` argument of the provider is used. Changing this creates a new routing entry.

func (RouterRouteOutput) RouterId added in v3.9.0

func (o RouterRouteOutput) RouterId() pulumi.StringOutput

ID of the router this routing entry belongs to. Changing this creates a new routing entry.

func (RouterRouteOutput) ToRouterRouteOutput

func (o RouterRouteOutput) ToRouterRouteOutput() RouterRouteOutput

func (RouterRouteOutput) ToRouterRouteOutputWithContext

func (o RouterRouteOutput) ToRouterRouteOutputWithContext(ctx context.Context) RouterRouteOutput

type RouterRouteState

type RouterRouteState struct {
	// CIDR block to match on the packet’s destination IP. Changing
	// this creates a new routing entry.
	DestinationCidr pulumi.StringPtrInput
	// IP address of the next hop gateway.  Changing
	// this creates a new routing entry.
	NextHop pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to configure a routing entry on a router. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// routing entry.
	Region pulumi.StringPtrInput
	// ID of the router this routing entry belongs to. Changing
	// this creates a new routing entry.
	RouterId pulumi.StringPtrInput
}

func (RouterRouteState) ElementType

func (RouterRouteState) ElementType() reflect.Type

type RouterState

type RouterState struct {
	// Administrative up/down status for the router
	// (must be "true" or "false" if provided). Changing this updates the
	// `adminStateUp` of an existing router.
	AdminStateUp pulumi.BoolPtrInput
	// The collection of tags assigned on the router, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayInput
	// An availability zone is used to make
	// network resources highly available. Used for resources with high availability
	// so that they are scheduled on different availability zones. Changing this
	// creates a new router.
	AvailabilityZoneHints pulumi.StringArrayInput
	// Human-readable description for the router.
	Description pulumi.StringPtrInput
	// Indicates whether or not to create a
	// distributed router. The default policy setting in Neutron restricts
	// usage of this property to administrative users only.
	Distributed pulumi.BoolPtrInput
	// Enable Source NAT for the router. Valid values are
	// "true" or "false". An `externalNetworkId` has to be set in order to
	// set this property. Changing this updates the `enableSnat` of the router.
	// Setting this value **requires** an **ext-gw-mode** extension to be enabled
	// in OpenStack Neutron.
	EnableSnat pulumi.BoolPtrInput
	// An external fixed IP for the router. This
	// can be repeated. The structure is described below. An `externalNetworkId`
	// has to be set in order to set this property. Changing this updates the
	// external fixed IPs of the router.
	ExternalFixedIps RouterExternalFixedIpArrayInput
	// The
	// network UUID of an external gateway for the router. A router with an
	// external gateway is required if any compute instances or load balancers
	// will be using floating IPs. Changing this updates the external gateway
	// of an existing router.
	//
	// Deprecated: use externalNetworkId instead
	ExternalGateway pulumi.StringPtrInput
	// The network UUID of an external gateway
	// for the router. A router with an external gateway is required if any
	// compute instances or load balancers will be using floating IPs. Changing
	// this updates the external gateway of the router.
	ExternalNetworkId pulumi.StringPtrInput
	// A list of external subnet IDs to try over
	// each to obtain a fixed IP for the router. If a subnet ID in a list has
	// exhausted floating IP pool, the next subnet ID will be tried. This argument is
	// used only during the router creation and allows to set only one external fixed
	// IP. Conflicts with an `externalFixedIp` argument.
	ExternalSubnetIds pulumi.StringArrayInput
	// A unique name for the router. Changing this
	// updates the `name` of an existing router.
	Name pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a router. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// router.
	Region pulumi.StringPtrInput
	// A set of string tags for the router.
	Tags pulumi.StringArrayInput
	// The owner of the floating IP. Required if admin wants
	// to create a router for another tenant. Changing this creates a new router.
	TenantId pulumi.StringPtrInput
	// Map of additional driver-specific options.
	ValueSpecs pulumi.MapInput
	// Map of additional vendor-specific options.
	// Supported options are described below.
	VendorOptions RouterVendorOptionsPtrInput
}

func (RouterState) ElementType

func (RouterState) ElementType() reflect.Type

type RouterVendorOptions

type RouterVendorOptions struct {
	// Boolean to control whether
	// the Router gateway is assigned during creation or updated after creation.
	SetRouterGatewayAfterCreate *bool `pulumi:"setRouterGatewayAfterCreate"`
}

type RouterVendorOptionsArgs

type RouterVendorOptionsArgs struct {
	// Boolean to control whether
	// the Router gateway is assigned during creation or updated after creation.
	SetRouterGatewayAfterCreate pulumi.BoolPtrInput `pulumi:"setRouterGatewayAfterCreate"`
}

func (RouterVendorOptionsArgs) ElementType

func (RouterVendorOptionsArgs) ElementType() reflect.Type

func (RouterVendorOptionsArgs) ToRouterVendorOptionsOutput

func (i RouterVendorOptionsArgs) ToRouterVendorOptionsOutput() RouterVendorOptionsOutput

func (RouterVendorOptionsArgs) ToRouterVendorOptionsOutputWithContext

func (i RouterVendorOptionsArgs) ToRouterVendorOptionsOutputWithContext(ctx context.Context) RouterVendorOptionsOutput

func (RouterVendorOptionsArgs) ToRouterVendorOptionsPtrOutput

func (i RouterVendorOptionsArgs) ToRouterVendorOptionsPtrOutput() RouterVendorOptionsPtrOutput

func (RouterVendorOptionsArgs) ToRouterVendorOptionsPtrOutputWithContext

func (i RouterVendorOptionsArgs) ToRouterVendorOptionsPtrOutputWithContext(ctx context.Context) RouterVendorOptionsPtrOutput

type RouterVendorOptionsInput

type RouterVendorOptionsInput interface {
	pulumi.Input

	ToRouterVendorOptionsOutput() RouterVendorOptionsOutput
	ToRouterVendorOptionsOutputWithContext(context.Context) RouterVendorOptionsOutput
}

RouterVendorOptionsInput is an input type that accepts RouterVendorOptionsArgs and RouterVendorOptionsOutput values. You can construct a concrete instance of `RouterVendorOptionsInput` via:

RouterVendorOptionsArgs{...}

type RouterVendorOptionsOutput

type RouterVendorOptionsOutput struct{ *pulumi.OutputState }

func (RouterVendorOptionsOutput) ElementType

func (RouterVendorOptionsOutput) ElementType() reflect.Type

func (RouterVendorOptionsOutput) SetRouterGatewayAfterCreate

func (o RouterVendorOptionsOutput) SetRouterGatewayAfterCreate() pulumi.BoolPtrOutput

Boolean to control whether the Router gateway is assigned during creation or updated after creation.

func (RouterVendorOptionsOutput) ToRouterVendorOptionsOutput

func (o RouterVendorOptionsOutput) ToRouterVendorOptionsOutput() RouterVendorOptionsOutput

func (RouterVendorOptionsOutput) ToRouterVendorOptionsOutputWithContext

func (o RouterVendorOptionsOutput) ToRouterVendorOptionsOutputWithContext(ctx context.Context) RouterVendorOptionsOutput

func (RouterVendorOptionsOutput) ToRouterVendorOptionsPtrOutput

func (o RouterVendorOptionsOutput) ToRouterVendorOptionsPtrOutput() RouterVendorOptionsPtrOutput

func (RouterVendorOptionsOutput) ToRouterVendorOptionsPtrOutputWithContext

func (o RouterVendorOptionsOutput) ToRouterVendorOptionsPtrOutputWithContext(ctx context.Context) RouterVendorOptionsPtrOutput

type RouterVendorOptionsPtrInput

type RouterVendorOptionsPtrInput interface {
	pulumi.Input

	ToRouterVendorOptionsPtrOutput() RouterVendorOptionsPtrOutput
	ToRouterVendorOptionsPtrOutputWithContext(context.Context) RouterVendorOptionsPtrOutput
}

RouterVendorOptionsPtrInput is an input type that accepts RouterVendorOptionsArgs, RouterVendorOptionsPtr and RouterVendorOptionsPtrOutput values. You can construct a concrete instance of `RouterVendorOptionsPtrInput` via:

        RouterVendorOptionsArgs{...}

or:

        nil

type RouterVendorOptionsPtrOutput

type RouterVendorOptionsPtrOutput struct{ *pulumi.OutputState }

func (RouterVendorOptionsPtrOutput) Elem

func (RouterVendorOptionsPtrOutput) ElementType

func (RouterVendorOptionsPtrOutput) SetRouterGatewayAfterCreate

func (o RouterVendorOptionsPtrOutput) SetRouterGatewayAfterCreate() pulumi.BoolPtrOutput

Boolean to control whether the Router gateway is assigned during creation or updated after creation.

func (RouterVendorOptionsPtrOutput) ToRouterVendorOptionsPtrOutput

func (o RouterVendorOptionsPtrOutput) ToRouterVendorOptionsPtrOutput() RouterVendorOptionsPtrOutput

func (RouterVendorOptionsPtrOutput) ToRouterVendorOptionsPtrOutputWithContext

func (o RouterVendorOptionsPtrOutput) ToRouterVendorOptionsPtrOutputWithContext(ctx context.Context) RouterVendorOptionsPtrOutput

type SecGroup

type SecGroup struct {
	pulumi.CustomResourceState

	// The collection of tags assigned on the security group, which have
	// been explicitly and implicitly added.
	AllTags pulumi.StringArrayOutput `pulumi:"allTags"`
	// Whether or not to delete the default
	// egress security rules. This is `false` by default. See the below note
	// for more information.
	DeleteDefaultRules pulumi.BoolPtrOutput `pulumi:"deleteDefaultRules"`
	// A unique name for the security group.
	Description pulumi.StringOutput `pulumi:"description"`
	// A unique name for the security group.
	Name pulumi.StringOutput `pulumi:"name"`
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// security group.
	Region pulumi.StringOutput `pulumi:"region"`
	// A set of string tags for the security group.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// The owner of the security group. Required if admin
	// wants to create a port for another tenant. Changing this creates a new
	// security group.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
}

## Import

Security Groups can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/secGroup:SecGroup secgroup_1 38809219-5e8a-4852-9139-6f461c90e8bc ```

func GetSecGroup

func GetSecGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecGroupState, opts ...pulumi.ResourceOption) (*SecGroup, error)

GetSecGroup gets an existing SecGroup 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 NewSecGroup

func NewSecGroup(ctx *pulumi.Context,
	name string, args *SecGroupArgs, opts ...pulumi.ResourceOption) (*SecGroup, error)

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

func (*SecGroup) ElementType

func (*SecGroup) ElementType() reflect.Type

func (*SecGroup) ToSecGroupOutput

func (i *SecGroup) ToSecGroupOutput() SecGroupOutput

func (*SecGroup) ToSecGroupOutputWithContext

func (i *SecGroup) ToSecGroupOutputWithContext(ctx context.Context) SecGroupOutput

type SecGroupArgs

type SecGroupArgs struct {
	// Whether or not to delete the default
	// egress security rules. This is `false` by default. See the below note
	// for more information.
	DeleteDefaultRules pulumi.BoolPtrInput
	// A unique name for the security group.
	Description pulumi.StringPtrInput
	// A unique name for the security group.
	Name pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// security group.
	Region pulumi.StringPtrInput
	// A set of string tags for the security group.
	Tags pulumi.StringArrayInput
	// The owner of the security group. Required if admin
	// wants to create a port for another tenant. Changing this creates a new
	// security group.
	TenantId pulumi.StringPtrInput
}

The set of arguments for constructing a SecGroup resource.

func (SecGroupArgs) ElementType

func (SecGroupArgs) ElementType() reflect.Type

type SecGroupArray

type SecGroupArray []SecGroupInput

func (SecGroupArray) ElementType

func (SecGroupArray) ElementType() reflect.Type

func (SecGroupArray) ToSecGroupArrayOutput

func (i SecGroupArray) ToSecGroupArrayOutput() SecGroupArrayOutput

func (SecGroupArray) ToSecGroupArrayOutputWithContext

func (i SecGroupArray) ToSecGroupArrayOutputWithContext(ctx context.Context) SecGroupArrayOutput

type SecGroupArrayInput

type SecGroupArrayInput interface {
	pulumi.Input

	ToSecGroupArrayOutput() SecGroupArrayOutput
	ToSecGroupArrayOutputWithContext(context.Context) SecGroupArrayOutput
}

SecGroupArrayInput is an input type that accepts SecGroupArray and SecGroupArrayOutput values. You can construct a concrete instance of `SecGroupArrayInput` via:

SecGroupArray{ SecGroupArgs{...} }

type SecGroupArrayOutput

type SecGroupArrayOutput struct{ *pulumi.OutputState }

func (SecGroupArrayOutput) ElementType

func (SecGroupArrayOutput) ElementType() reflect.Type

func (SecGroupArrayOutput) Index

func (SecGroupArrayOutput) ToSecGroupArrayOutput

func (o SecGroupArrayOutput) ToSecGroupArrayOutput() SecGroupArrayOutput

func (SecGroupArrayOutput) ToSecGroupArrayOutputWithContext

func (o SecGroupArrayOutput) ToSecGroupArrayOutputWithContext(ctx context.Context) SecGroupArrayOutput

type SecGroupInput

type SecGroupInput interface {
	pulumi.Input

	ToSecGroupOutput() SecGroupOutput
	ToSecGroupOutputWithContext(ctx context.Context) SecGroupOutput
}

type SecGroupMap

type SecGroupMap map[string]SecGroupInput

func (SecGroupMap) ElementType

func (SecGroupMap) ElementType() reflect.Type

func (SecGroupMap) ToSecGroupMapOutput

func (i SecGroupMap) ToSecGroupMapOutput() SecGroupMapOutput

func (SecGroupMap) ToSecGroupMapOutputWithContext

func (i SecGroupMap) ToSecGroupMapOutputWithContext(ctx context.Context) SecGroupMapOutput

type SecGroupMapInput

type SecGroupMapInput interface {
	pulumi.Input

	ToSecGroupMapOutput() SecGroupMapOutput
	ToSecGroupMapOutputWithContext(context.Context) SecGroupMapOutput
}

SecGroupMapInput is an input type that accepts SecGroupMap and SecGroupMapOutput values. You can construct a concrete instance of `SecGroupMapInput` via:

SecGroupMap{ "key": SecGroupArgs{...} }

type SecGroupMapOutput

type SecGroupMapOutput struct{ *pulumi.OutputState }

func (SecGroupMapOutput) ElementType

func (SecGroupMapOutput) ElementType() reflect.Type

func (SecGroupMapOutput) MapIndex

func (SecGroupMapOutput) ToSecGroupMapOutput

func (o SecGroupMapOutput) ToSecGroupMapOutput() SecGroupMapOutput

func (SecGroupMapOutput) ToSecGroupMapOutputWithContext

func (o SecGroupMapOutput) ToSecGroupMapOutputWithContext(ctx context.Context) SecGroupMapOutput

type SecGroupOutput

type SecGroupOutput struct{ *pulumi.OutputState }

func (SecGroupOutput) AllTags added in v3.9.0

The collection of tags assigned on the security group, which have been explicitly and implicitly added.

func (SecGroupOutput) DeleteDefaultRules added in v3.9.0

func (o SecGroupOutput) DeleteDefaultRules() pulumi.BoolPtrOutput

Whether or not to delete the default egress security rules. This is `false` by default. See the below note for more information.

func (SecGroupOutput) Description added in v3.9.0

func (o SecGroupOutput) Description() pulumi.StringOutput

A unique name for the security group.

func (SecGroupOutput) ElementType

func (SecGroupOutput) ElementType() reflect.Type

func (SecGroupOutput) Name added in v3.9.0

A unique name for the security group.

func (SecGroupOutput) Region added in v3.9.0

func (o SecGroupOutput) Region() pulumi.StringOutput

The region in which to obtain the V2 networking client. A networking client is needed to create a port. If omitted, the `region` argument of the provider is used. Changing this creates a new security group.

func (SecGroupOutput) Tags added in v3.9.0

A set of string tags for the security group.

func (SecGroupOutput) TenantId added in v3.9.0

func (o SecGroupOutput) TenantId() pulumi.StringOutput

The owner of the security group. Required if admin wants to create a port for another tenant. Changing this creates a new security group.

func (SecGroupOutput) ToSecGroupOutput

func (o SecGroupOutput) ToSecGroupOutput() SecGroupOutput

func (SecGroupOutput) ToSecGroupOutputWithContext

func (o SecGroupOutput) ToSecGroupOutputWithContext(ctx context.Context) SecGroupOutput

type SecGroupRule

type SecGroupRule struct {
	pulumi.CustomResourceState

	// A description of the rule. Changing this creates a new security group rule.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The direction of the rule, valid values are __ingress__
	// or __egress__. Changing this creates a new security group rule.
	Direction pulumi.StringOutput `pulumi:"direction"`
	// The layer 3 protocol type, valid values are __IPv4__
	// or __IPv6__. Changing this creates a new security group rule.
	Ethertype pulumi.StringOutput `pulumi:"ethertype"`
	// The higher part of the allowed port range, valid
	// integer value needs to be between 1 and 65535. Changing this creates a new
	// security group rule.
	PortRangeMax pulumi.IntOutput `pulumi:"portRangeMax"`
	// The lower part of the allowed port range, valid
	// integer value needs to be between 1 and 65535. Changing this creates a new
	// security group rule.
	PortRangeMin pulumi.IntOutput `pulumi:"portRangeMin"`
	// The layer 4 protocol type, valid values are following. Changing this creates a new security group rule. This is required if you want to specify a port range.
	// * __tcp__
	// * __udp__
	// * __icmp__
	// * __ah__
	// * __dccp__
	// * __egp__
	// * __esp__
	// * __gre__
	// * __igmp__
	// * __ipv6-encap__
	// * __ipv6-frag__
	// * __ipv6-icmp__
	// * __ipv6-nonxt__
	// * __ipv6-opts__
	// * __ipv6-route__
	// * __ospf__
	// * __pgm__
	// * __rsvp__
	// * __sctp__
	// * __udplite__
	// * __vrrp__
	Protocol pulumi.StringOutput `pulumi:"protocol"`
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// security group rule.
	Region pulumi.StringOutput `pulumi:"region"`
	// The remote group id, the value needs to be an
	// Openstack ID of a security group in the same tenant. Changing this creates
	// a new security group rule.
	RemoteGroupId pulumi.StringOutput `pulumi:"remoteGroupId"`
	// The remote CIDR, the value needs to be a valid
	// CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule.
	RemoteIpPrefix pulumi.StringOutput `pulumi:"remoteIpPrefix"`
	// The security group id the rule should belong
	// to, the value needs to be an Openstack ID of a security group in the same
	// tenant. Changing this creates a new security group rule.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// The owner of the security group. Required if admin
	// wants to create a port for another tenant. Changing this creates a new
	// security group rule.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
}

Manages a V2 neutron security group rule resource within OpenStack. Unlike Nova security groups, neutron separates the group from the rules and also allows an admin to target a specific tenant_id.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		secgroup1, err := networking.NewSecGroup(ctx, "secgroup1", &networking.SecGroupArgs{
			Description: pulumi.String("My neutron security group"),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewSecGroupRule(ctx, "secgroupRule1", &networking.SecGroupRuleArgs{
			Direction:       pulumi.String("ingress"),
			Ethertype:       pulumi.String("IPv4"),
			Protocol:        pulumi.String("tcp"),
			PortRangeMin:    pulumi.Int(22),
			PortRangeMax:    pulumi.Int(22),
			RemoteIpPrefix:  pulumi.String("0.0.0.0/0"),
			SecurityGroupId: secgroup1.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

> **Note:** To expose the full port-range 1:65535, use `0` for `portRangeMin` and `portRangeMax`.

## Import

Security Group Rules can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/secGroupRule:SecGroupRule secgroup_rule_1 aeb68ee3-6e9d-4256-955c-9584a6212745 ```

func GetSecGroupRule

func GetSecGroupRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecGroupRuleState, opts ...pulumi.ResourceOption) (*SecGroupRule, error)

GetSecGroupRule gets an existing SecGroupRule 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 NewSecGroupRule

func NewSecGroupRule(ctx *pulumi.Context,
	name string, args *SecGroupRuleArgs, opts ...pulumi.ResourceOption) (*SecGroupRule, error)

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

func (*SecGroupRule) ElementType

func (*SecGroupRule) ElementType() reflect.Type

func (*SecGroupRule) ToSecGroupRuleOutput

func (i *SecGroupRule) ToSecGroupRuleOutput() SecGroupRuleOutput

func (*SecGroupRule) ToSecGroupRuleOutputWithContext

func (i *SecGroupRule) ToSecGroupRuleOutputWithContext(ctx context.Context) SecGroupRuleOutput

type SecGroupRuleArgs

type SecGroupRuleArgs struct {
	// A description of the rule. Changing this creates a new security group rule.
	Description pulumi.StringPtrInput
	// The direction of the rule, valid values are __ingress__
	// or __egress__. Changing this creates a new security group rule.
	Direction pulumi.StringInput
	// The layer 3 protocol type, valid values are __IPv4__
	// or __IPv6__. Changing this creates a new security group rule.
	Ethertype pulumi.StringInput
	// The higher part of the allowed port range, valid
	// integer value needs to be between 1 and 65535. Changing this creates a new
	// security group rule.
	PortRangeMax pulumi.IntPtrInput
	// The lower part of the allowed port range, valid
	// integer value needs to be between 1 and 65535. Changing this creates a new
	// security group rule.
	PortRangeMin pulumi.IntPtrInput
	// The layer 4 protocol type, valid values are following. Changing this creates a new security group rule. This is required if you want to specify a port range.
	// * __tcp__
	// * __udp__
	// * __icmp__
	// * __ah__
	// * __dccp__
	// * __egp__
	// * __esp__
	// * __gre__
	// * __igmp__
	// * __ipv6-encap__
	// * __ipv6-frag__
	// * __ipv6-icmp__
	// * __ipv6-nonxt__
	// * __ipv6-opts__
	// * __ipv6-route__
	// * __ospf__
	// * __pgm__
	// * __rsvp__
	// * __sctp__
	// * __udplite__
	// * __vrrp__
	Protocol pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// security group rule.
	Region pulumi.StringPtrInput
	// The remote group id, the value needs to be an
	// Openstack ID of a security group in the same tenant. Changing this creates
	// a new security group rule.
	RemoteGroupId pulumi.StringPtrInput
	// The remote CIDR, the value needs to be a valid
	// CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule.
	RemoteIpPrefix pulumi.StringPtrInput
	// The security group id the rule should belong
	// to, the value needs to be an Openstack ID of a security group in the same
	// tenant. Changing this creates a new security group rule.
	SecurityGroupId pulumi.StringInput
	// The owner of the security group. Required if admin
	// wants to create a port for another tenant. Changing this creates a new
	// security group rule.
	TenantId pulumi.StringPtrInput
}

The set of arguments for constructing a SecGroupRule resource.

func (SecGroupRuleArgs) ElementType

func (SecGroupRuleArgs) ElementType() reflect.Type

type SecGroupRuleArray

type SecGroupRuleArray []SecGroupRuleInput

func (SecGroupRuleArray) ElementType

func (SecGroupRuleArray) ElementType() reflect.Type

func (SecGroupRuleArray) ToSecGroupRuleArrayOutput

func (i SecGroupRuleArray) ToSecGroupRuleArrayOutput() SecGroupRuleArrayOutput

func (SecGroupRuleArray) ToSecGroupRuleArrayOutputWithContext

func (i SecGroupRuleArray) ToSecGroupRuleArrayOutputWithContext(ctx context.Context) SecGroupRuleArrayOutput

type SecGroupRuleArrayInput

type SecGroupRuleArrayInput interface {
	pulumi.Input

	ToSecGroupRuleArrayOutput() SecGroupRuleArrayOutput
	ToSecGroupRuleArrayOutputWithContext(context.Context) SecGroupRuleArrayOutput
}

SecGroupRuleArrayInput is an input type that accepts SecGroupRuleArray and SecGroupRuleArrayOutput values. You can construct a concrete instance of `SecGroupRuleArrayInput` via:

SecGroupRuleArray{ SecGroupRuleArgs{...} }

type SecGroupRuleArrayOutput

type SecGroupRuleArrayOutput struct{ *pulumi.OutputState }

func (SecGroupRuleArrayOutput) ElementType

func (SecGroupRuleArrayOutput) ElementType() reflect.Type

func (SecGroupRuleArrayOutput) Index

func (SecGroupRuleArrayOutput) ToSecGroupRuleArrayOutput

func (o SecGroupRuleArrayOutput) ToSecGroupRuleArrayOutput() SecGroupRuleArrayOutput

func (SecGroupRuleArrayOutput) ToSecGroupRuleArrayOutputWithContext

func (o SecGroupRuleArrayOutput) ToSecGroupRuleArrayOutputWithContext(ctx context.Context) SecGroupRuleArrayOutput

type SecGroupRuleInput

type SecGroupRuleInput interface {
	pulumi.Input

	ToSecGroupRuleOutput() SecGroupRuleOutput
	ToSecGroupRuleOutputWithContext(ctx context.Context) SecGroupRuleOutput
}

type SecGroupRuleMap

type SecGroupRuleMap map[string]SecGroupRuleInput

func (SecGroupRuleMap) ElementType

func (SecGroupRuleMap) ElementType() reflect.Type

func (SecGroupRuleMap) ToSecGroupRuleMapOutput

func (i SecGroupRuleMap) ToSecGroupRuleMapOutput() SecGroupRuleMapOutput

func (SecGroupRuleMap) ToSecGroupRuleMapOutputWithContext

func (i SecGroupRuleMap) ToSecGroupRuleMapOutputWithContext(ctx context.Context) SecGroupRuleMapOutput

type SecGroupRuleMapInput

type SecGroupRuleMapInput interface {
	pulumi.Input

	ToSecGroupRuleMapOutput() SecGroupRuleMapOutput
	ToSecGroupRuleMapOutputWithContext(context.Context) SecGroupRuleMapOutput
}

SecGroupRuleMapInput is an input type that accepts SecGroupRuleMap and SecGroupRuleMapOutput values. You can construct a concrete instance of `SecGroupRuleMapInput` via:

SecGroupRuleMap{ "key": SecGroupRuleArgs{...} }

type SecGroupRuleMapOutput

type SecGroupRuleMapOutput struct{ *pulumi.OutputState }

func (SecGroupRuleMapOutput) ElementType

func (SecGroupRuleMapOutput) ElementType() reflect.Type

func (SecGroupRuleMapOutput) MapIndex

func (SecGroupRuleMapOutput) ToSecGroupRuleMapOutput

func (o SecGroupRuleMapOutput) ToSecGroupRuleMapOutput() SecGroupRuleMapOutput

func (SecGroupRuleMapOutput) ToSecGroupRuleMapOutputWithContext

func (o SecGroupRuleMapOutput) ToSecGroupRuleMapOutputWithContext(ctx context.Context) SecGroupRuleMapOutput

type SecGroupRuleOutput

type SecGroupRuleOutput struct{ *pulumi.OutputState }

func (SecGroupRuleOutput) Description added in v3.9.0

func (o SecGroupRuleOutput) Description() pulumi.StringPtrOutput

A description of the rule. Changing this creates a new security group rule.

func (SecGroupRuleOutput) Direction added in v3.9.0

func (o SecGroupRuleOutput) Direction() pulumi.StringOutput

The direction of the rule, valid values are __ingress__ or __egress__. Changing this creates a new security group rule.

func (SecGroupRuleOutput) ElementType

func (SecGroupRuleOutput) ElementType() reflect.Type

func (SecGroupRuleOutput) Ethertype added in v3.9.0

func (o SecGroupRuleOutput) Ethertype() pulumi.StringOutput

The layer 3 protocol type, valid values are __IPv4__ or __IPv6__. Changing this creates a new security group rule.

func (SecGroupRuleOutput) PortRangeMax added in v3.9.0

func (o SecGroupRuleOutput) PortRangeMax() pulumi.IntOutput

The higher part of the allowed port range, valid integer value needs to be between 1 and 65535. Changing this creates a new security group rule.

func (SecGroupRuleOutput) PortRangeMin added in v3.9.0

func (o SecGroupRuleOutput) PortRangeMin() pulumi.IntOutput

The lower part of the allowed port range, valid integer value needs to be between 1 and 65535. Changing this creates a new security group rule.

func (SecGroupRuleOutput) Protocol added in v3.9.0

func (o SecGroupRuleOutput) Protocol() pulumi.StringOutput

The layer 4 protocol type, valid values are following. Changing this creates a new security group rule. This is required if you want to specify a port range. * __tcp__ * __udp__ * __icmp__ * __ah__ * __dccp__ * __egp__ * __esp__ * __gre__ * __igmp__ * __ipv6-encap__ * __ipv6-frag__ * __ipv6-icmp__ * __ipv6-nonxt__ * __ipv6-opts__ * __ipv6-route__ * __ospf__ * __pgm__ * __rsvp__ * __sctp__ * __udplite__ * __vrrp__

func (SecGroupRuleOutput) Region added in v3.9.0

The region in which to obtain the V2 networking client. A networking client is needed to create a port. If omitted, the `region` argument of the provider is used. Changing this creates a new security group rule.

func (SecGroupRuleOutput) RemoteGroupId added in v3.9.0

func (o SecGroupRuleOutput) RemoteGroupId() pulumi.StringOutput

The remote group id, the value needs to be an Openstack ID of a security group in the same tenant. Changing this creates a new security group rule.

func (SecGroupRuleOutput) RemoteIpPrefix added in v3.9.0

func (o SecGroupRuleOutput) RemoteIpPrefix() pulumi.StringOutput

The remote CIDR, the value needs to be a valid CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule.

func (SecGroupRuleOutput) SecurityGroupId added in v3.9.0

func (o SecGroupRuleOutput) SecurityGroupId() pulumi.StringOutput

The security group id the rule should belong to, the value needs to be an Openstack ID of a security group in the same tenant. Changing this creates a new security group rule.

func (SecGroupRuleOutput) TenantId added in v3.9.0

func (o SecGroupRuleOutput) TenantId() pulumi.StringOutput

The owner of the security group. Required if admin wants to create a port for another tenant. Changing this creates a new security group rule.

func (SecGroupRuleOutput) ToSecGroupRuleOutput

func (o SecGroupRuleOutput) ToSecGroupRuleOutput() SecGroupRuleOutput

func (SecGroupRuleOutput) ToSecGroupRuleOutputWithContext

func (o SecGroupRuleOutput) ToSecGroupRuleOutputWithContext(ctx context.Context) SecGroupRuleOutput

type SecGroupRuleState

type SecGroupRuleState struct {
	// A description of the rule. Changing this creates a new security group rule.
	Description pulumi.StringPtrInput
	// The direction of the rule, valid values are __ingress__
	// or __egress__. Changing this creates a new security group rule.
	Direction pulumi.StringPtrInput
	// The layer 3 protocol type, valid values are __IPv4__
	// or __IPv6__. Changing this creates a new security group rule.
	Ethertype pulumi.StringPtrInput
	// The higher part of the allowed port range, valid
	// integer value needs to be between 1 and 65535. Changing this creates a new
	// security group rule.
	PortRangeMax pulumi.IntPtrInput
	// The lower part of the allowed port range, valid
	// integer value needs to be between 1 and 65535. Changing this creates a new
	// security group rule.
	PortRangeMin pulumi.IntPtrInput
	// The layer 4 protocol type, valid values are following. Changing this creates a new security group rule. This is required if you want to specify a port range.
	// * __tcp__
	// * __udp__
	// * __icmp__
	// * __ah__
	// * __dccp__
	// * __egp__
	// * __esp__
	// * __gre__
	// * __igmp__
	// * __ipv6-encap__
	// * __ipv6-frag__
	// * __ipv6-icmp__
	// * __ipv6-nonxt__
	// * __ipv6-opts__
	// * __ipv6-route__
	// * __ospf__
	// * __pgm__
	// * __rsvp__
	// * __sctp__
	// * __udplite__
	// * __vrrp__
	Protocol pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// security group rule.
	Region pulumi.StringPtrInput
	// The remote group id, the value needs to be an
	// Openstack ID of a security group in the same tenant. Changing this creates
	// a new security group rule.
	RemoteGroupId pulumi.StringPtrInput
	// The remote CIDR, the value needs to be a valid
	// CIDR (i.e. 192.168.0.0/16). Changing this creates a new security group rule.
	RemoteIpPrefix pulumi.StringPtrInput
	// The security group id the rule should belong
	// to, the value needs to be an Openstack ID of a security group in the same
	// tenant. Changing this creates a new security group rule.
	SecurityGroupId pulumi.StringPtrInput
	// The owner of the security group. Required if admin
	// wants to create a port for another tenant. Changing this creates a new
	// security group rule.
	TenantId pulumi.StringPtrInput
}

func (SecGroupRuleState) ElementType

func (SecGroupRuleState) ElementType() reflect.Type

type SecGroupState

type SecGroupState struct {
	// The collection of tags assigned on the security group, which have
	// been explicitly and implicitly added.
	AllTags pulumi.StringArrayInput
	// Whether or not to delete the default
	// egress security rules. This is `false` by default. See the below note
	// for more information.
	DeleteDefaultRules pulumi.BoolPtrInput
	// A unique name for the security group.
	Description pulumi.StringPtrInput
	// A unique name for the security group.
	Name pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a port. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// security group.
	Region pulumi.StringPtrInput
	// A set of string tags for the security group.
	Tags pulumi.StringArrayInput
	// The owner of the security group. Required if admin
	// wants to create a port for another tenant. Changing this creates a new
	// security group.
	TenantId pulumi.StringPtrInput
}

func (SecGroupState) ElementType

func (SecGroupState) ElementType() reflect.Type

type Subnet

type Subnet struct {
	pulumi.CustomResourceState

	// The collection of ags assigned on the subnet, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayOutput `pulumi:"allTags"`
	// A block declaring the start and end range of
	// the IP addresses available for use with DHCP in this subnet. Multiple
	// `allocationPool` blocks can be declared, providing the subnet with more
	// than one range of IP addresses to use with DHCP. However, each IP range
	// must be from the same CIDR that the subnet is part of.
	// The `allocationPool` block is documented below.
	AllocationPools SubnetAllocationPoolArrayOutput `pulumi:"allocationPools"`
	// A block declaring the start and end range of the IP addresses available for
	// use with DHCP in this subnet.
	// The `allocationPools` block is documented below.
	//
	// Deprecated: use allocationPool instead
	AllocationPoolsCollection SubnetAllocationPoolsCollectionArrayOutput `pulumi:"allocationPoolsCollection"`
	// CIDR representing IP range for this subnet, based on IP
	// version. You can omit this option if you are creating a subnet from a
	// subnet pool.
	Cidr pulumi.StringOutput `pulumi:"cidr"`
	// Human-readable description of the subnet. Changing this
	// updates the name of the existing subnet.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// An array of DNS name server names used by hosts
	// in this subnet. Changing this updates the DNS name servers for the existing
	// subnet.
	DnsNameservers pulumi.StringArrayOutput `pulumi:"dnsNameservers"`
	// The administrative state of the network.
	// Acceptable values are "true" and "false". Changing this value enables or
	// disables the DHCP capabilities of the existing subnet. Defaults to true.
	EnableDhcp pulumi.BoolPtrOutput `pulumi:"enableDhcp"`
	// Default gateway used by devices in this subnet.
	// Leaving this blank and not setting `noGateway` will cause a default
	// gateway of `.1` to be used. Changing this updates the gateway IP of the
	// existing subnet.
	GatewayIp pulumi.StringOutput `pulumi:"gatewayIp"`
	// (**Deprecated** - use `networking.SubnetRoute`
	// instead) An array of routes that should be used by devices
	// with IPs from this subnet (not including local subnet route). The hostRoute
	// object structure is documented below. Changing this updates the host routes
	// for the existing subnet.
	//
	// Deprecated: Use networking.SubnetRoute instead
	HostRoutes SubnetHostRouteArrayOutput `pulumi:"hostRoutes"`
	// IP version, either 4 (default) or 6. Changing this creates a
	// new subnet.
	IpVersion pulumi.IntPtrOutput `pulumi:"ipVersion"`
	// The IPv6 address mode. Valid values are
	// `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6AddressMode pulumi.StringOutput `pulumi:"ipv6AddressMode"`
	// The IPv6 Router Advertisement mode. Valid values
	// are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6RaMode pulumi.StringOutput `pulumi:"ipv6RaMode"`
	// The name of the subnet. Changing this updates the name of
	// the existing subnet.
	Name pulumi.StringOutput `pulumi:"name"`
	// The UUID of the parent network. Changing this
	// creates a new subnet.
	NetworkId pulumi.StringOutput `pulumi:"networkId"`
	// Do not set a gateway IP on this subnet. Changing
	// this removes or adds a default gateway IP of the existing subnet.
	NoGateway pulumi.BoolPtrOutput `pulumi:"noGateway"`
	// The prefix length to use when creating a subnet
	// from a subnet pool. The default subnet pool prefix length that was defined
	// when creating the subnet pool will be used if not provided. Changing this
	// creates a new subnet.
	PrefixLength pulumi.IntPtrOutput `pulumi:"prefixLength"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron subnet. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// subnet.
	Region pulumi.StringOutput `pulumi:"region"`
	// An array of service types used by the subnet.
	// Changing this updates the service types for the existing subnet.
	ServiceTypes pulumi.StringArrayOutput `pulumi:"serviceTypes"`
	// The ID of the subnetpool associated with the subnet.
	SubnetpoolId pulumi.StringPtrOutput `pulumi:"subnetpoolId"`
	// A set of string tags for the subnet.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// The owner of the subnet. Required if admin wants to
	// create a subnet for another tenant. Changing this creates a new subnet.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
	// Map of additional options.
	ValueSpecs pulumi.MapOutput `pulumi:"valueSpecs"`
}

Manages a V2 Neutron subnet resource within OpenStack.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{
			NetworkId: network1.ID(),
			Cidr:      pulumi.String("192.168.199.0/24"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Subnets can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/subnet:Subnet subnet_1 da4faf16-5546-41e4-8330-4d0002b74048 ```

func GetSubnet

func GetSubnet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubnetState, opts ...pulumi.ResourceOption) (*Subnet, error)

GetSubnet gets an existing Subnet 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 NewSubnet

func NewSubnet(ctx *pulumi.Context,
	name string, args *SubnetArgs, opts ...pulumi.ResourceOption) (*Subnet, error)

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

func (*Subnet) ElementType

func (*Subnet) ElementType() reflect.Type

func (*Subnet) ToSubnetOutput

func (i *Subnet) ToSubnetOutput() SubnetOutput

func (*Subnet) ToSubnetOutputWithContext

func (i *Subnet) ToSubnetOutputWithContext(ctx context.Context) SubnetOutput

type SubnetAllocationPool

type SubnetAllocationPool struct {
	// The ending address.
	End string `pulumi:"end"`
	// The starting address.
	Start string `pulumi:"start"`
}

type SubnetAllocationPoolArgs

type SubnetAllocationPoolArgs struct {
	// The ending address.
	End pulumi.StringInput `pulumi:"end"`
	// The starting address.
	Start pulumi.StringInput `pulumi:"start"`
}

func (SubnetAllocationPoolArgs) ElementType

func (SubnetAllocationPoolArgs) ElementType() reflect.Type

func (SubnetAllocationPoolArgs) ToSubnetAllocationPoolOutput

func (i SubnetAllocationPoolArgs) ToSubnetAllocationPoolOutput() SubnetAllocationPoolOutput

func (SubnetAllocationPoolArgs) ToSubnetAllocationPoolOutputWithContext

func (i SubnetAllocationPoolArgs) ToSubnetAllocationPoolOutputWithContext(ctx context.Context) SubnetAllocationPoolOutput

type SubnetAllocationPoolArray

type SubnetAllocationPoolArray []SubnetAllocationPoolInput

func (SubnetAllocationPoolArray) ElementType

func (SubnetAllocationPoolArray) ElementType() reflect.Type

func (SubnetAllocationPoolArray) ToSubnetAllocationPoolArrayOutput

func (i SubnetAllocationPoolArray) ToSubnetAllocationPoolArrayOutput() SubnetAllocationPoolArrayOutput

func (SubnetAllocationPoolArray) ToSubnetAllocationPoolArrayOutputWithContext

func (i SubnetAllocationPoolArray) ToSubnetAllocationPoolArrayOutputWithContext(ctx context.Context) SubnetAllocationPoolArrayOutput

type SubnetAllocationPoolArrayInput

type SubnetAllocationPoolArrayInput interface {
	pulumi.Input

	ToSubnetAllocationPoolArrayOutput() SubnetAllocationPoolArrayOutput
	ToSubnetAllocationPoolArrayOutputWithContext(context.Context) SubnetAllocationPoolArrayOutput
}

SubnetAllocationPoolArrayInput is an input type that accepts SubnetAllocationPoolArray and SubnetAllocationPoolArrayOutput values. You can construct a concrete instance of `SubnetAllocationPoolArrayInput` via:

SubnetAllocationPoolArray{ SubnetAllocationPoolArgs{...} }

type SubnetAllocationPoolArrayOutput

type SubnetAllocationPoolArrayOutput struct{ *pulumi.OutputState }

func (SubnetAllocationPoolArrayOutput) ElementType

func (SubnetAllocationPoolArrayOutput) Index

func (SubnetAllocationPoolArrayOutput) ToSubnetAllocationPoolArrayOutput

func (o SubnetAllocationPoolArrayOutput) ToSubnetAllocationPoolArrayOutput() SubnetAllocationPoolArrayOutput

func (SubnetAllocationPoolArrayOutput) ToSubnetAllocationPoolArrayOutputWithContext

func (o SubnetAllocationPoolArrayOutput) ToSubnetAllocationPoolArrayOutputWithContext(ctx context.Context) SubnetAllocationPoolArrayOutput

type SubnetAllocationPoolInput

type SubnetAllocationPoolInput interface {
	pulumi.Input

	ToSubnetAllocationPoolOutput() SubnetAllocationPoolOutput
	ToSubnetAllocationPoolOutputWithContext(context.Context) SubnetAllocationPoolOutput
}

SubnetAllocationPoolInput is an input type that accepts SubnetAllocationPoolArgs and SubnetAllocationPoolOutput values. You can construct a concrete instance of `SubnetAllocationPoolInput` via:

SubnetAllocationPoolArgs{...}

type SubnetAllocationPoolOutput

type SubnetAllocationPoolOutput struct{ *pulumi.OutputState }

func (SubnetAllocationPoolOutput) ElementType

func (SubnetAllocationPoolOutput) ElementType() reflect.Type

func (SubnetAllocationPoolOutput) End

The ending address.

func (SubnetAllocationPoolOutput) Start

The starting address.

func (SubnetAllocationPoolOutput) ToSubnetAllocationPoolOutput

func (o SubnetAllocationPoolOutput) ToSubnetAllocationPoolOutput() SubnetAllocationPoolOutput

func (SubnetAllocationPoolOutput) ToSubnetAllocationPoolOutputWithContext

func (o SubnetAllocationPoolOutput) ToSubnetAllocationPoolOutputWithContext(ctx context.Context) SubnetAllocationPoolOutput

type SubnetAllocationPoolsCollection

type SubnetAllocationPoolsCollection struct {
	// The ending address.
	End string `pulumi:"end"`
	// The starting address.
	Start string `pulumi:"start"`
}

type SubnetAllocationPoolsCollectionArgs

type SubnetAllocationPoolsCollectionArgs struct {
	// The ending address.
	End pulumi.StringInput `pulumi:"end"`
	// The starting address.
	Start pulumi.StringInput `pulumi:"start"`
}

func (SubnetAllocationPoolsCollectionArgs) ElementType

func (SubnetAllocationPoolsCollectionArgs) ToSubnetAllocationPoolsCollectionOutput

func (i SubnetAllocationPoolsCollectionArgs) ToSubnetAllocationPoolsCollectionOutput() SubnetAllocationPoolsCollectionOutput

func (SubnetAllocationPoolsCollectionArgs) ToSubnetAllocationPoolsCollectionOutputWithContext

func (i SubnetAllocationPoolsCollectionArgs) ToSubnetAllocationPoolsCollectionOutputWithContext(ctx context.Context) SubnetAllocationPoolsCollectionOutput

type SubnetAllocationPoolsCollectionArray

type SubnetAllocationPoolsCollectionArray []SubnetAllocationPoolsCollectionInput

func (SubnetAllocationPoolsCollectionArray) ElementType

func (SubnetAllocationPoolsCollectionArray) ToSubnetAllocationPoolsCollectionArrayOutput

func (i SubnetAllocationPoolsCollectionArray) ToSubnetAllocationPoolsCollectionArrayOutput() SubnetAllocationPoolsCollectionArrayOutput

func (SubnetAllocationPoolsCollectionArray) ToSubnetAllocationPoolsCollectionArrayOutputWithContext

func (i SubnetAllocationPoolsCollectionArray) ToSubnetAllocationPoolsCollectionArrayOutputWithContext(ctx context.Context) SubnetAllocationPoolsCollectionArrayOutput

type SubnetAllocationPoolsCollectionArrayInput

type SubnetAllocationPoolsCollectionArrayInput interface {
	pulumi.Input

	ToSubnetAllocationPoolsCollectionArrayOutput() SubnetAllocationPoolsCollectionArrayOutput
	ToSubnetAllocationPoolsCollectionArrayOutputWithContext(context.Context) SubnetAllocationPoolsCollectionArrayOutput
}

SubnetAllocationPoolsCollectionArrayInput is an input type that accepts SubnetAllocationPoolsCollectionArray and SubnetAllocationPoolsCollectionArrayOutput values. You can construct a concrete instance of `SubnetAllocationPoolsCollectionArrayInput` via:

SubnetAllocationPoolsCollectionArray{ SubnetAllocationPoolsCollectionArgs{...} }

type SubnetAllocationPoolsCollectionArrayOutput

type SubnetAllocationPoolsCollectionArrayOutput struct{ *pulumi.OutputState }

func (SubnetAllocationPoolsCollectionArrayOutput) ElementType

func (SubnetAllocationPoolsCollectionArrayOutput) Index

func (SubnetAllocationPoolsCollectionArrayOutput) ToSubnetAllocationPoolsCollectionArrayOutput

func (o SubnetAllocationPoolsCollectionArrayOutput) ToSubnetAllocationPoolsCollectionArrayOutput() SubnetAllocationPoolsCollectionArrayOutput

func (SubnetAllocationPoolsCollectionArrayOutput) ToSubnetAllocationPoolsCollectionArrayOutputWithContext

func (o SubnetAllocationPoolsCollectionArrayOutput) ToSubnetAllocationPoolsCollectionArrayOutputWithContext(ctx context.Context) SubnetAllocationPoolsCollectionArrayOutput

type SubnetAllocationPoolsCollectionInput

type SubnetAllocationPoolsCollectionInput interface {
	pulumi.Input

	ToSubnetAllocationPoolsCollectionOutput() SubnetAllocationPoolsCollectionOutput
	ToSubnetAllocationPoolsCollectionOutputWithContext(context.Context) SubnetAllocationPoolsCollectionOutput
}

SubnetAllocationPoolsCollectionInput is an input type that accepts SubnetAllocationPoolsCollectionArgs and SubnetAllocationPoolsCollectionOutput values. You can construct a concrete instance of `SubnetAllocationPoolsCollectionInput` via:

SubnetAllocationPoolsCollectionArgs{...}

type SubnetAllocationPoolsCollectionOutput

type SubnetAllocationPoolsCollectionOutput struct{ *pulumi.OutputState }

func (SubnetAllocationPoolsCollectionOutput) ElementType

func (SubnetAllocationPoolsCollectionOutput) End

The ending address.

func (SubnetAllocationPoolsCollectionOutput) Start

The starting address.

func (SubnetAllocationPoolsCollectionOutput) ToSubnetAllocationPoolsCollectionOutput

func (o SubnetAllocationPoolsCollectionOutput) ToSubnetAllocationPoolsCollectionOutput() SubnetAllocationPoolsCollectionOutput

func (SubnetAllocationPoolsCollectionOutput) ToSubnetAllocationPoolsCollectionOutputWithContext

func (o SubnetAllocationPoolsCollectionOutput) ToSubnetAllocationPoolsCollectionOutputWithContext(ctx context.Context) SubnetAllocationPoolsCollectionOutput

type SubnetArgs

type SubnetArgs struct {
	// A block declaring the start and end range of
	// the IP addresses available for use with DHCP in this subnet. Multiple
	// `allocationPool` blocks can be declared, providing the subnet with more
	// than one range of IP addresses to use with DHCP. However, each IP range
	// must be from the same CIDR that the subnet is part of.
	// The `allocationPool` block is documented below.
	AllocationPools SubnetAllocationPoolArrayInput
	// A block declaring the start and end range of the IP addresses available for
	// use with DHCP in this subnet.
	// The `allocationPools` block is documented below.
	//
	// Deprecated: use allocationPool instead
	AllocationPoolsCollection SubnetAllocationPoolsCollectionArrayInput
	// CIDR representing IP range for this subnet, based on IP
	// version. You can omit this option if you are creating a subnet from a
	// subnet pool.
	Cidr pulumi.StringPtrInput
	// Human-readable description of the subnet. Changing this
	// updates the name of the existing subnet.
	Description pulumi.StringPtrInput
	// An array of DNS name server names used by hosts
	// in this subnet. Changing this updates the DNS name servers for the existing
	// subnet.
	DnsNameservers pulumi.StringArrayInput
	// The administrative state of the network.
	// Acceptable values are "true" and "false". Changing this value enables or
	// disables the DHCP capabilities of the existing subnet. Defaults to true.
	EnableDhcp pulumi.BoolPtrInput
	// Default gateway used by devices in this subnet.
	// Leaving this blank and not setting `noGateway` will cause a default
	// gateway of `.1` to be used. Changing this updates the gateway IP of the
	// existing subnet.
	GatewayIp pulumi.StringPtrInput
	// (**Deprecated** - use `networking.SubnetRoute`
	// instead) An array of routes that should be used by devices
	// with IPs from this subnet (not including local subnet route). The hostRoute
	// object structure is documented below. Changing this updates the host routes
	// for the existing subnet.
	//
	// Deprecated: Use networking.SubnetRoute instead
	HostRoutes SubnetHostRouteArrayInput
	// IP version, either 4 (default) or 6. Changing this creates a
	// new subnet.
	IpVersion pulumi.IntPtrInput
	// The IPv6 address mode. Valid values are
	// `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6AddressMode pulumi.StringPtrInput
	// The IPv6 Router Advertisement mode. Valid values
	// are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6RaMode pulumi.StringPtrInput
	// The name of the subnet. Changing this updates the name of
	// the existing subnet.
	Name pulumi.StringPtrInput
	// The UUID of the parent network. Changing this
	// creates a new subnet.
	NetworkId pulumi.StringInput
	// Do not set a gateway IP on this subnet. Changing
	// this removes or adds a default gateway IP of the existing subnet.
	NoGateway pulumi.BoolPtrInput
	// The prefix length to use when creating a subnet
	// from a subnet pool. The default subnet pool prefix length that was defined
	// when creating the subnet pool will be used if not provided. Changing this
	// creates a new subnet.
	PrefixLength pulumi.IntPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron subnet. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// subnet.
	Region pulumi.StringPtrInput
	// An array of service types used by the subnet.
	// Changing this updates the service types for the existing subnet.
	ServiceTypes pulumi.StringArrayInput
	// The ID of the subnetpool associated with the subnet.
	SubnetpoolId pulumi.StringPtrInput
	// A set of string tags for the subnet.
	Tags pulumi.StringArrayInput
	// The owner of the subnet. Required if admin wants to
	// create a subnet for another tenant. Changing this creates a new subnet.
	TenantId pulumi.StringPtrInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

The set of arguments for constructing a Subnet resource.

func (SubnetArgs) ElementType

func (SubnetArgs) ElementType() reflect.Type

type SubnetArray

type SubnetArray []SubnetInput

func (SubnetArray) ElementType

func (SubnetArray) ElementType() reflect.Type

func (SubnetArray) ToSubnetArrayOutput

func (i SubnetArray) ToSubnetArrayOutput() SubnetArrayOutput

func (SubnetArray) ToSubnetArrayOutputWithContext

func (i SubnetArray) ToSubnetArrayOutputWithContext(ctx context.Context) SubnetArrayOutput

type SubnetArrayInput

type SubnetArrayInput interface {
	pulumi.Input

	ToSubnetArrayOutput() SubnetArrayOutput
	ToSubnetArrayOutputWithContext(context.Context) SubnetArrayOutput
}

SubnetArrayInput is an input type that accepts SubnetArray and SubnetArrayOutput values. You can construct a concrete instance of `SubnetArrayInput` via:

SubnetArray{ SubnetArgs{...} }

type SubnetArrayOutput

type SubnetArrayOutput struct{ *pulumi.OutputState }

func (SubnetArrayOutput) ElementType

func (SubnetArrayOutput) ElementType() reflect.Type

func (SubnetArrayOutput) Index

func (SubnetArrayOutput) ToSubnetArrayOutput

func (o SubnetArrayOutput) ToSubnetArrayOutput() SubnetArrayOutput

func (SubnetArrayOutput) ToSubnetArrayOutputWithContext

func (o SubnetArrayOutput) ToSubnetArrayOutputWithContext(ctx context.Context) SubnetArrayOutput

type SubnetHostRoute

type SubnetHostRoute struct {
	// The destination CIDR.
	DestinationCidr string `pulumi:"destinationCidr"`
	// The next hop in the route.
	NextHop string `pulumi:"nextHop"`
}

type SubnetHostRouteArgs

type SubnetHostRouteArgs struct {
	// The destination CIDR.
	DestinationCidr pulumi.StringInput `pulumi:"destinationCidr"`
	// The next hop in the route.
	NextHop pulumi.StringInput `pulumi:"nextHop"`
}

func (SubnetHostRouteArgs) ElementType

func (SubnetHostRouteArgs) ElementType() reflect.Type

func (SubnetHostRouteArgs) ToSubnetHostRouteOutput

func (i SubnetHostRouteArgs) ToSubnetHostRouteOutput() SubnetHostRouteOutput

func (SubnetHostRouteArgs) ToSubnetHostRouteOutputWithContext

func (i SubnetHostRouteArgs) ToSubnetHostRouteOutputWithContext(ctx context.Context) SubnetHostRouteOutput

type SubnetHostRouteArray

type SubnetHostRouteArray []SubnetHostRouteInput

func (SubnetHostRouteArray) ElementType

func (SubnetHostRouteArray) ElementType() reflect.Type

func (SubnetHostRouteArray) ToSubnetHostRouteArrayOutput

func (i SubnetHostRouteArray) ToSubnetHostRouteArrayOutput() SubnetHostRouteArrayOutput

func (SubnetHostRouteArray) ToSubnetHostRouteArrayOutputWithContext

func (i SubnetHostRouteArray) ToSubnetHostRouteArrayOutputWithContext(ctx context.Context) SubnetHostRouteArrayOutput

type SubnetHostRouteArrayInput

type SubnetHostRouteArrayInput interface {
	pulumi.Input

	ToSubnetHostRouteArrayOutput() SubnetHostRouteArrayOutput
	ToSubnetHostRouteArrayOutputWithContext(context.Context) SubnetHostRouteArrayOutput
}

SubnetHostRouteArrayInput is an input type that accepts SubnetHostRouteArray and SubnetHostRouteArrayOutput values. You can construct a concrete instance of `SubnetHostRouteArrayInput` via:

SubnetHostRouteArray{ SubnetHostRouteArgs{...} }

type SubnetHostRouteArrayOutput

type SubnetHostRouteArrayOutput struct{ *pulumi.OutputState }

func (SubnetHostRouteArrayOutput) ElementType

func (SubnetHostRouteArrayOutput) ElementType() reflect.Type

func (SubnetHostRouteArrayOutput) Index

func (SubnetHostRouteArrayOutput) ToSubnetHostRouteArrayOutput

func (o SubnetHostRouteArrayOutput) ToSubnetHostRouteArrayOutput() SubnetHostRouteArrayOutput

func (SubnetHostRouteArrayOutput) ToSubnetHostRouteArrayOutputWithContext

func (o SubnetHostRouteArrayOutput) ToSubnetHostRouteArrayOutputWithContext(ctx context.Context) SubnetHostRouteArrayOutput

type SubnetHostRouteInput

type SubnetHostRouteInput interface {
	pulumi.Input

	ToSubnetHostRouteOutput() SubnetHostRouteOutput
	ToSubnetHostRouteOutputWithContext(context.Context) SubnetHostRouteOutput
}

SubnetHostRouteInput is an input type that accepts SubnetHostRouteArgs and SubnetHostRouteOutput values. You can construct a concrete instance of `SubnetHostRouteInput` via:

SubnetHostRouteArgs{...}

type SubnetHostRouteOutput

type SubnetHostRouteOutput struct{ *pulumi.OutputState }

func (SubnetHostRouteOutput) DestinationCidr

func (o SubnetHostRouteOutput) DestinationCidr() pulumi.StringOutput

The destination CIDR.

func (SubnetHostRouteOutput) ElementType

func (SubnetHostRouteOutput) ElementType() reflect.Type

func (SubnetHostRouteOutput) NextHop

The next hop in the route.

func (SubnetHostRouteOutput) ToSubnetHostRouteOutput

func (o SubnetHostRouteOutput) ToSubnetHostRouteOutput() SubnetHostRouteOutput

func (SubnetHostRouteOutput) ToSubnetHostRouteOutputWithContext

func (o SubnetHostRouteOutput) ToSubnetHostRouteOutputWithContext(ctx context.Context) SubnetHostRouteOutput

type SubnetInput

type SubnetInput interface {
	pulumi.Input

	ToSubnetOutput() SubnetOutput
	ToSubnetOutputWithContext(ctx context.Context) SubnetOutput
}

type SubnetMap

type SubnetMap map[string]SubnetInput

func (SubnetMap) ElementType

func (SubnetMap) ElementType() reflect.Type

func (SubnetMap) ToSubnetMapOutput

func (i SubnetMap) ToSubnetMapOutput() SubnetMapOutput

func (SubnetMap) ToSubnetMapOutputWithContext

func (i SubnetMap) ToSubnetMapOutputWithContext(ctx context.Context) SubnetMapOutput

type SubnetMapInput

type SubnetMapInput interface {
	pulumi.Input

	ToSubnetMapOutput() SubnetMapOutput
	ToSubnetMapOutputWithContext(context.Context) SubnetMapOutput
}

SubnetMapInput is an input type that accepts SubnetMap and SubnetMapOutput values. You can construct a concrete instance of `SubnetMapInput` via:

SubnetMap{ "key": SubnetArgs{...} }

type SubnetMapOutput

type SubnetMapOutput struct{ *pulumi.OutputState }

func (SubnetMapOutput) ElementType

func (SubnetMapOutput) ElementType() reflect.Type

func (SubnetMapOutput) MapIndex

func (SubnetMapOutput) ToSubnetMapOutput

func (o SubnetMapOutput) ToSubnetMapOutput() SubnetMapOutput

func (SubnetMapOutput) ToSubnetMapOutputWithContext

func (o SubnetMapOutput) ToSubnetMapOutputWithContext(ctx context.Context) SubnetMapOutput

type SubnetOutput

type SubnetOutput struct{ *pulumi.OutputState }

func (SubnetOutput) AllTags added in v3.9.0

The collection of ags assigned on the subnet, which have been explicitly and implicitly added.

func (SubnetOutput) AllocationPools added in v3.9.0

func (o SubnetOutput) AllocationPools() SubnetAllocationPoolArrayOutput

A block declaring the start and end range of the IP addresses available for use with DHCP in this subnet. Multiple `allocationPool` blocks can be declared, providing the subnet with more than one range of IP addresses to use with DHCP. However, each IP range must be from the same CIDR that the subnet is part of. The `allocationPool` block is documented below.

func (SubnetOutput) AllocationPoolsCollection deprecated added in v3.9.0

func (o SubnetOutput) AllocationPoolsCollection() SubnetAllocationPoolsCollectionArrayOutput

A block declaring the start and end range of the IP addresses available for use with DHCP in this subnet. The `allocationPools` block is documented below.

Deprecated: use allocationPool instead

func (SubnetOutput) Cidr added in v3.9.0

func (o SubnetOutput) Cidr() pulumi.StringOutput

CIDR representing IP range for this subnet, based on IP version. You can omit this option if you are creating a subnet from a subnet pool.

func (SubnetOutput) Description added in v3.9.0

func (o SubnetOutput) Description() pulumi.StringPtrOutput

Human-readable description of the subnet. Changing this updates the name of the existing subnet.

func (SubnetOutput) DnsNameservers added in v3.9.0

func (o SubnetOutput) DnsNameservers() pulumi.StringArrayOutput

An array of DNS name server names used by hosts in this subnet. Changing this updates the DNS name servers for the existing subnet.

func (SubnetOutput) ElementType

func (SubnetOutput) ElementType() reflect.Type

func (SubnetOutput) EnableDhcp added in v3.9.0

func (o SubnetOutput) EnableDhcp() pulumi.BoolPtrOutput

The administrative state of the network. Acceptable values are "true" and "false". Changing this value enables or disables the DHCP capabilities of the existing subnet. Defaults to true.

func (SubnetOutput) GatewayIp added in v3.9.0

func (o SubnetOutput) GatewayIp() pulumi.StringOutput

Default gateway used by devices in this subnet. Leaving this blank and not setting `noGateway` will cause a default gateway of `.1` to be used. Changing this updates the gateway IP of the existing subnet.

func (SubnetOutput) HostRoutes deprecated added in v3.9.0

(**Deprecated** - use `networking.SubnetRoute` instead) An array of routes that should be used by devices with IPs from this subnet (not including local subnet route). The hostRoute object structure is documented below. Changing this updates the host routes for the existing subnet.

Deprecated: Use networking.SubnetRoute instead

func (SubnetOutput) IpVersion added in v3.9.0

func (o SubnetOutput) IpVersion() pulumi.IntPtrOutput

IP version, either 4 (default) or 6. Changing this creates a new subnet.

func (SubnetOutput) Ipv6AddressMode added in v3.9.0

func (o SubnetOutput) Ipv6AddressMode() pulumi.StringOutput

The IPv6 address mode. Valid values are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.

func (SubnetOutput) Ipv6RaMode added in v3.9.0

func (o SubnetOutput) Ipv6RaMode() pulumi.StringOutput

The IPv6 Router Advertisement mode. Valid values are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.

func (SubnetOutput) Name added in v3.9.0

func (o SubnetOutput) Name() pulumi.StringOutput

The name of the subnet. Changing this updates the name of the existing subnet.

func (SubnetOutput) NetworkId added in v3.9.0

func (o SubnetOutput) NetworkId() pulumi.StringOutput

The UUID of the parent network. Changing this creates a new subnet.

func (SubnetOutput) NoGateway added in v3.9.0

func (o SubnetOutput) NoGateway() pulumi.BoolPtrOutput

Do not set a gateway IP on this subnet. Changing this removes or adds a default gateway IP of the existing subnet.

func (SubnetOutput) PrefixLength added in v3.9.0

func (o SubnetOutput) PrefixLength() pulumi.IntPtrOutput

The prefix length to use when creating a subnet from a subnet pool. The default subnet pool prefix length that was defined when creating the subnet pool will be used if not provided. Changing this creates a new subnet.

func (SubnetOutput) Region added in v3.9.0

func (o SubnetOutput) Region() pulumi.StringOutput

The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron subnet. If omitted, the `region` argument of the provider is used. Changing this creates a new subnet.

func (SubnetOutput) ServiceTypes added in v3.11.0

func (o SubnetOutput) ServiceTypes() pulumi.StringArrayOutput

An array of service types used by the subnet. Changing this updates the service types for the existing subnet.

func (SubnetOutput) SubnetpoolId added in v3.9.0

func (o SubnetOutput) SubnetpoolId() pulumi.StringPtrOutput

The ID of the subnetpool associated with the subnet.

func (SubnetOutput) Tags added in v3.9.0

A set of string tags for the subnet.

func (SubnetOutput) TenantId added in v3.9.0

func (o SubnetOutput) TenantId() pulumi.StringOutput

The owner of the subnet. Required if admin wants to create a subnet for another tenant. Changing this creates a new subnet.

func (SubnetOutput) ToSubnetOutput

func (o SubnetOutput) ToSubnetOutput() SubnetOutput

func (SubnetOutput) ToSubnetOutputWithContext

func (o SubnetOutput) ToSubnetOutputWithContext(ctx context.Context) SubnetOutput

func (SubnetOutput) ValueSpecs added in v3.9.0

func (o SubnetOutput) ValueSpecs() pulumi.MapOutput

Map of additional options.

type SubnetPool

type SubnetPool struct {
	pulumi.CustomResourceState

	// The Neutron address scope to assign to the
	// subnetpool. Changing this updates the address scope id of the existing
	// subnetpool.
	AddressScopeId pulumi.StringPtrOutput `pulumi:"addressScopeId"`
	// The collection of tags assigned on the subnetpool, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayOutput `pulumi:"allTags"`
	// The time at which subnetpool was created.
	CreatedAt pulumi.StringOutput `pulumi:"createdAt"`
	// The size of the prefix to allocate when the cidr
	// or prefixlen attributes are omitted when you create the subnet. Defaults to the
	// MinPrefixLen. Changing this updates the default prefixlen of the existing
	// subnetpool.
	DefaultPrefixlen pulumi.IntOutput `pulumi:"defaultPrefixlen"`
	// The per-project quota on the prefix space that can be
	// allocated from the subnetpool for project subnets. Changing this updates the
	// default quota of the existing subnetpool.
	DefaultQuota pulumi.IntPtrOutput `pulumi:"defaultQuota"`
	// The human-readable description for the subnetpool.
	// Changing this updates the description of the existing subnetpool.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The IP protocol version.
	IpVersion pulumi.IntOutput `pulumi:"ipVersion"`
	// Indicates whether the subnetpool is default
	// subnetpool or not. Changing this updates the default status of the existing
	// subnetpool.
	IsDefault pulumi.BoolPtrOutput `pulumi:"isDefault"`
	// The maximum prefix size that can be allocated from
	// the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools,
	// default is 128. Changing this updates the max prefixlen of the existing
	// subnetpool.
	MaxPrefixlen pulumi.IntOutput `pulumi:"maxPrefixlen"`
	// The smallest prefix that can be allocated from a
	// subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default
	// is 64. Changing this updates the min prefixlen of the existing subnetpool.
	MinPrefixlen pulumi.IntOutput `pulumi:"minPrefixlen"`
	// The name of the subnetpool. Changing this updates the name of
	// the existing subnetpool.
	Name pulumi.StringOutput `pulumi:"name"`
	// A list of subnet prefixes to assign to the subnetpool.
	// Neutron API merges adjacent prefixes and treats them as a single prefix. Each
	// subnet prefix must be unique among all subnet prefixes in all subnetpools that
	// are associated with the address scope. Changing this updates the prefixes list
	// of the existing subnetpool.
	Prefixes pulumi.StringArrayOutput `pulumi:"prefixes"`
	// The owner of the subnetpool. Required if admin wants to
	// create a subnetpool for another project. Changing this creates a new subnetpool.
	ProjectId pulumi.StringOutput `pulumi:"projectId"`
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron subnetpool. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// subnetpool.
	Region pulumi.StringOutput `pulumi:"region"`
	// The revision number of the subnetpool.
	RevisionNumber pulumi.IntOutput `pulumi:"revisionNumber"`
	// Indicates whether this subnetpool is shared across
	// all projects. Changing this updates the shared status of the existing
	// subnetpool.
	Shared pulumi.BoolPtrOutput `pulumi:"shared"`
	// A set of string tags for the subnetpool.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// The time at which subnetpool was created.
	UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"`
	// Map of additional options.
	ValueSpecs pulumi.MapOutput `pulumi:"valueSpecs"`
}

Manages a V2 Neutron subnetpool resource within OpenStack.

## Example Usage

### Create a Subnet Pool

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.NewSubnetPool(ctx, "subnetpool1", &networking.SubnetPoolArgs{
			IpVersion: pulumi.Int(6),
			Prefixes: pulumi.StringArray{
				pulumi.String("fdf7:b13d:dead:beef::/64"),
				pulumi.String("fd65:86cc:a334:39b7::/64"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

### Create a Subnet from a Subnet Pool

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		subnetpool1, err := networking.NewSubnetPool(ctx, "subnetpool1", &networking.SubnetPoolArgs{
			Prefixes: pulumi.StringArray{
				pulumi.String("10.11.12.0/24"),
			},
		})
		if err != nil {
			return err
		}
		_, err = networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{
			Cidr:         pulumi.String("10.11.12.0/25"),
			NetworkId:    network1.ID(),
			SubnetpoolId: subnetpool1.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Subnetpools can be imported using the `id`, e.g.

```sh $ pulumi import openstack:networking/subnetPool:SubnetPool subnetpool_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 ```

func GetSubnetPool

func GetSubnetPool(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubnetPoolState, opts ...pulumi.ResourceOption) (*SubnetPool, error)

GetSubnetPool gets an existing SubnetPool 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 NewSubnetPool

func NewSubnetPool(ctx *pulumi.Context,
	name string, args *SubnetPoolArgs, opts ...pulumi.ResourceOption) (*SubnetPool, error)

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

func (*SubnetPool) ElementType

func (*SubnetPool) ElementType() reflect.Type

func (*SubnetPool) ToSubnetPoolOutput

func (i *SubnetPool) ToSubnetPoolOutput() SubnetPoolOutput

func (*SubnetPool) ToSubnetPoolOutputWithContext

func (i *SubnetPool) ToSubnetPoolOutputWithContext(ctx context.Context) SubnetPoolOutput

type SubnetPoolArgs

type SubnetPoolArgs struct {
	// The Neutron address scope to assign to the
	// subnetpool. Changing this updates the address scope id of the existing
	// subnetpool.
	AddressScopeId pulumi.StringPtrInput
	// The size of the prefix to allocate when the cidr
	// or prefixlen attributes are omitted when you create the subnet. Defaults to the
	// MinPrefixLen. Changing this updates the default prefixlen of the existing
	// subnetpool.
	DefaultPrefixlen pulumi.IntPtrInput
	// The per-project quota on the prefix space that can be
	// allocated from the subnetpool for project subnets. Changing this updates the
	// default quota of the existing subnetpool.
	DefaultQuota pulumi.IntPtrInput
	// The human-readable description for the subnetpool.
	// Changing this updates the description of the existing subnetpool.
	Description pulumi.StringPtrInput
	// The IP protocol version.
	IpVersion pulumi.IntPtrInput
	// Indicates whether the subnetpool is default
	// subnetpool or not. Changing this updates the default status of the existing
	// subnetpool.
	IsDefault pulumi.BoolPtrInput
	// The maximum prefix size that can be allocated from
	// the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools,
	// default is 128. Changing this updates the max prefixlen of the existing
	// subnetpool.
	MaxPrefixlen pulumi.IntPtrInput
	// The smallest prefix that can be allocated from a
	// subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default
	// is 64. Changing this updates the min prefixlen of the existing subnetpool.
	MinPrefixlen pulumi.IntPtrInput
	// The name of the subnetpool. Changing this updates the name of
	// the existing subnetpool.
	Name pulumi.StringPtrInput
	// A list of subnet prefixes to assign to the subnetpool.
	// Neutron API merges adjacent prefixes and treats them as a single prefix. Each
	// subnet prefix must be unique among all subnet prefixes in all subnetpools that
	// are associated with the address scope. Changing this updates the prefixes list
	// of the existing subnetpool.
	Prefixes pulumi.StringArrayInput
	// The owner of the subnetpool. Required if admin wants to
	// create a subnetpool for another project. Changing this creates a new subnetpool.
	ProjectId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron subnetpool. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// subnetpool.
	Region pulumi.StringPtrInput
	// Indicates whether this subnetpool is shared across
	// all projects. Changing this updates the shared status of the existing
	// subnetpool.
	Shared pulumi.BoolPtrInput
	// A set of string tags for the subnetpool.
	Tags pulumi.StringArrayInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

The set of arguments for constructing a SubnetPool resource.

func (SubnetPoolArgs) ElementType

func (SubnetPoolArgs) ElementType() reflect.Type

type SubnetPoolArray

type SubnetPoolArray []SubnetPoolInput

func (SubnetPoolArray) ElementType

func (SubnetPoolArray) ElementType() reflect.Type

func (SubnetPoolArray) ToSubnetPoolArrayOutput

func (i SubnetPoolArray) ToSubnetPoolArrayOutput() SubnetPoolArrayOutput

func (SubnetPoolArray) ToSubnetPoolArrayOutputWithContext

func (i SubnetPoolArray) ToSubnetPoolArrayOutputWithContext(ctx context.Context) SubnetPoolArrayOutput

type SubnetPoolArrayInput

type SubnetPoolArrayInput interface {
	pulumi.Input

	ToSubnetPoolArrayOutput() SubnetPoolArrayOutput
	ToSubnetPoolArrayOutputWithContext(context.Context) SubnetPoolArrayOutput
}

SubnetPoolArrayInput is an input type that accepts SubnetPoolArray and SubnetPoolArrayOutput values. You can construct a concrete instance of `SubnetPoolArrayInput` via:

SubnetPoolArray{ SubnetPoolArgs{...} }

type SubnetPoolArrayOutput

type SubnetPoolArrayOutput struct{ *pulumi.OutputState }

func (SubnetPoolArrayOutput) ElementType

func (SubnetPoolArrayOutput) ElementType() reflect.Type

func (SubnetPoolArrayOutput) Index

func (SubnetPoolArrayOutput) ToSubnetPoolArrayOutput

func (o SubnetPoolArrayOutput) ToSubnetPoolArrayOutput() SubnetPoolArrayOutput

func (SubnetPoolArrayOutput) ToSubnetPoolArrayOutputWithContext

func (o SubnetPoolArrayOutput) ToSubnetPoolArrayOutputWithContext(ctx context.Context) SubnetPoolArrayOutput

type SubnetPoolInput

type SubnetPoolInput interface {
	pulumi.Input

	ToSubnetPoolOutput() SubnetPoolOutput
	ToSubnetPoolOutputWithContext(ctx context.Context) SubnetPoolOutput
}

type SubnetPoolMap

type SubnetPoolMap map[string]SubnetPoolInput

func (SubnetPoolMap) ElementType

func (SubnetPoolMap) ElementType() reflect.Type

func (SubnetPoolMap) ToSubnetPoolMapOutput

func (i SubnetPoolMap) ToSubnetPoolMapOutput() SubnetPoolMapOutput

func (SubnetPoolMap) ToSubnetPoolMapOutputWithContext

func (i SubnetPoolMap) ToSubnetPoolMapOutputWithContext(ctx context.Context) SubnetPoolMapOutput

type SubnetPoolMapInput

type SubnetPoolMapInput interface {
	pulumi.Input

	ToSubnetPoolMapOutput() SubnetPoolMapOutput
	ToSubnetPoolMapOutputWithContext(context.Context) SubnetPoolMapOutput
}

SubnetPoolMapInput is an input type that accepts SubnetPoolMap and SubnetPoolMapOutput values. You can construct a concrete instance of `SubnetPoolMapInput` via:

SubnetPoolMap{ "key": SubnetPoolArgs{...} }

type SubnetPoolMapOutput

type SubnetPoolMapOutput struct{ *pulumi.OutputState }

func (SubnetPoolMapOutput) ElementType

func (SubnetPoolMapOutput) ElementType() reflect.Type

func (SubnetPoolMapOutput) MapIndex

func (SubnetPoolMapOutput) ToSubnetPoolMapOutput

func (o SubnetPoolMapOutput) ToSubnetPoolMapOutput() SubnetPoolMapOutput

func (SubnetPoolMapOutput) ToSubnetPoolMapOutputWithContext

func (o SubnetPoolMapOutput) ToSubnetPoolMapOutputWithContext(ctx context.Context) SubnetPoolMapOutput

type SubnetPoolOutput

type SubnetPoolOutput struct{ *pulumi.OutputState }

func (SubnetPoolOutput) AddressScopeId added in v3.9.0

func (o SubnetPoolOutput) AddressScopeId() pulumi.StringPtrOutput

The Neutron address scope to assign to the subnetpool. Changing this updates the address scope id of the existing subnetpool.

func (SubnetPoolOutput) AllTags added in v3.9.0

The collection of tags assigned on the subnetpool, which have been explicitly and implicitly added.

func (SubnetPoolOutput) CreatedAt added in v3.9.0

func (o SubnetPoolOutput) CreatedAt() pulumi.StringOutput

The time at which subnetpool was created.

func (SubnetPoolOutput) DefaultPrefixlen added in v3.9.0

func (o SubnetPoolOutput) DefaultPrefixlen() pulumi.IntOutput

The size of the prefix to allocate when the cidr or prefixlen attributes are omitted when you create the subnet. Defaults to the MinPrefixLen. Changing this updates the default prefixlen of the existing subnetpool.

func (SubnetPoolOutput) DefaultQuota added in v3.9.0

func (o SubnetPoolOutput) DefaultQuota() pulumi.IntPtrOutput

The per-project quota on the prefix space that can be allocated from the subnetpool for project subnets. Changing this updates the default quota of the existing subnetpool.

func (SubnetPoolOutput) Description added in v3.9.0

func (o SubnetPoolOutput) Description() pulumi.StringPtrOutput

The human-readable description for the subnetpool. Changing this updates the description of the existing subnetpool.

func (SubnetPoolOutput) ElementType

func (SubnetPoolOutput) ElementType() reflect.Type

func (SubnetPoolOutput) IpVersion added in v3.9.0

func (o SubnetPoolOutput) IpVersion() pulumi.IntOutput

The IP protocol version.

func (SubnetPoolOutput) IsDefault added in v3.9.0

func (o SubnetPoolOutput) IsDefault() pulumi.BoolPtrOutput

Indicates whether the subnetpool is default subnetpool or not. Changing this updates the default status of the existing subnetpool.

func (SubnetPoolOutput) MaxPrefixlen added in v3.9.0

func (o SubnetPoolOutput) MaxPrefixlen() pulumi.IntOutput

The maximum prefix size that can be allocated from the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools, default is 128. Changing this updates the max prefixlen of the existing subnetpool.

func (SubnetPoolOutput) MinPrefixlen added in v3.9.0

func (o SubnetPoolOutput) MinPrefixlen() pulumi.IntOutput

The smallest prefix that can be allocated from a subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default is 64. Changing this updates the min prefixlen of the existing subnetpool.

func (SubnetPoolOutput) Name added in v3.9.0

The name of the subnetpool. Changing this updates the name of the existing subnetpool.

func (SubnetPoolOutput) Prefixes added in v3.9.0

A list of subnet prefixes to assign to the subnetpool. Neutron API merges adjacent prefixes and treats them as a single prefix. Each subnet prefix must be unique among all subnet prefixes in all subnetpools that are associated with the address scope. Changing this updates the prefixes list of the existing subnetpool.

func (SubnetPoolOutput) ProjectId added in v3.9.0

func (o SubnetPoolOutput) ProjectId() pulumi.StringOutput

The owner of the subnetpool. Required if admin wants to create a subnetpool for another project. Changing this creates a new subnetpool.

func (SubnetPoolOutput) Region added in v3.9.0

The region in which to obtain the V2 Networking client. A Networking client is needed to create a Neutron subnetpool. If omitted, the `region` argument of the provider is used. Changing this creates a new subnetpool.

func (SubnetPoolOutput) RevisionNumber added in v3.9.0

func (o SubnetPoolOutput) RevisionNumber() pulumi.IntOutput

The revision number of the subnetpool.

func (SubnetPoolOutput) Shared added in v3.9.0

Indicates whether this subnetpool is shared across all projects. Changing this updates the shared status of the existing subnetpool.

func (SubnetPoolOutput) Tags added in v3.9.0

A set of string tags for the subnetpool.

func (SubnetPoolOutput) ToSubnetPoolOutput

func (o SubnetPoolOutput) ToSubnetPoolOutput() SubnetPoolOutput

func (SubnetPoolOutput) ToSubnetPoolOutputWithContext

func (o SubnetPoolOutput) ToSubnetPoolOutputWithContext(ctx context.Context) SubnetPoolOutput

func (SubnetPoolOutput) UpdatedAt added in v3.9.0

func (o SubnetPoolOutput) UpdatedAt() pulumi.StringOutput

The time at which subnetpool was created.

func (SubnetPoolOutput) ValueSpecs added in v3.9.0

func (o SubnetPoolOutput) ValueSpecs() pulumi.MapOutput

Map of additional options.

type SubnetPoolState

type SubnetPoolState struct {
	// The Neutron address scope to assign to the
	// subnetpool. Changing this updates the address scope id of the existing
	// subnetpool.
	AddressScopeId pulumi.StringPtrInput
	// The collection of tags assigned on the subnetpool, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayInput
	// The time at which subnetpool was created.
	CreatedAt pulumi.StringPtrInput
	// The size of the prefix to allocate when the cidr
	// or prefixlen attributes are omitted when you create the subnet. Defaults to the
	// MinPrefixLen. Changing this updates the default prefixlen of the existing
	// subnetpool.
	DefaultPrefixlen pulumi.IntPtrInput
	// The per-project quota on the prefix space that can be
	// allocated from the subnetpool for project subnets. Changing this updates the
	// default quota of the existing subnetpool.
	DefaultQuota pulumi.IntPtrInput
	// The human-readable description for the subnetpool.
	// Changing this updates the description of the existing subnetpool.
	Description pulumi.StringPtrInput
	// The IP protocol version.
	IpVersion pulumi.IntPtrInput
	// Indicates whether the subnetpool is default
	// subnetpool or not. Changing this updates the default status of the existing
	// subnetpool.
	IsDefault pulumi.BoolPtrInput
	// The maximum prefix size that can be allocated from
	// the subnetpool. For IPv4 subnetpools, default is 32. For IPv6 subnetpools,
	// default is 128. Changing this updates the max prefixlen of the existing
	// subnetpool.
	MaxPrefixlen pulumi.IntPtrInput
	// The smallest prefix that can be allocated from a
	// subnetpool. For IPv4 subnetpools, default is 8. For IPv6 subnetpools, default
	// is 64. Changing this updates the min prefixlen of the existing subnetpool.
	MinPrefixlen pulumi.IntPtrInput
	// The name of the subnetpool. Changing this updates the name of
	// the existing subnetpool.
	Name pulumi.StringPtrInput
	// A list of subnet prefixes to assign to the subnetpool.
	// Neutron API merges adjacent prefixes and treats them as a single prefix. Each
	// subnet prefix must be unique among all subnet prefixes in all subnetpools that
	// are associated with the address scope. Changing this updates the prefixes list
	// of the existing subnetpool.
	Prefixes pulumi.StringArrayInput
	// The owner of the subnetpool. Required if admin wants to
	// create a subnetpool for another project. Changing this creates a new subnetpool.
	ProjectId pulumi.StringPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron subnetpool. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// subnetpool.
	Region pulumi.StringPtrInput
	// The revision number of the subnetpool.
	RevisionNumber pulumi.IntPtrInput
	// Indicates whether this subnetpool is shared across
	// all projects. Changing this updates the shared status of the existing
	// subnetpool.
	Shared pulumi.BoolPtrInput
	// A set of string tags for the subnetpool.
	Tags pulumi.StringArrayInput
	// The time at which subnetpool was created.
	UpdatedAt pulumi.StringPtrInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

func (SubnetPoolState) ElementType

func (SubnetPoolState) ElementType() reflect.Type

type SubnetRoute

type SubnetRoute struct {
	pulumi.CustomResourceState

	// CIDR block to match on the packet’s destination IP. Changing
	// this creates a new routing entry.
	DestinationCidr pulumi.StringOutput `pulumi:"destinationCidr"`
	// IP address of the next hop gateway.  Changing
	// this creates a new routing entry.
	NextHop pulumi.StringOutput `pulumi:"nextHop"`
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to configure a routing entry on a subnet. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// routing entry.
	Region pulumi.StringOutput `pulumi:"region"`
	// ID of the subnet this routing entry belongs to. Changing
	// this creates a new routing entry.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
}

Creates a routing entry on a OpenStack V2 subnet.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := networking.NewRouter(ctx, "router1", &networking.RouterArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		subnet1, err := networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{
			NetworkId: network1.ID(),
			Cidr:      pulumi.String("192.168.199.0/24"),
			IpVersion: pulumi.Int(4),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewSubnetRoute(ctx, "subnetRoute1", &networking.SubnetRouteArgs{
			SubnetId:        subnet1.ID(),
			DestinationCidr: pulumi.String("10.0.1.0/24"),
			NextHop:         pulumi.String("192.168.199.254"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Routing entries can be imported using a combined ID using the following format: `<subnet_id>-route-<destination_cidr>-<next_hop>`

```sh $ pulumi import openstack:networking/subnetRoute:SubnetRoute subnet_route_1 686fe248-386c-4f70-9f6c-281607dad079-route-10.0.1.0/24-192.168.199.25 ```

func GetSubnetRoute

func GetSubnetRoute(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubnetRouteState, opts ...pulumi.ResourceOption) (*SubnetRoute, error)

GetSubnetRoute gets an existing SubnetRoute 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 NewSubnetRoute

func NewSubnetRoute(ctx *pulumi.Context,
	name string, args *SubnetRouteArgs, opts ...pulumi.ResourceOption) (*SubnetRoute, error)

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

func (*SubnetRoute) ElementType

func (*SubnetRoute) ElementType() reflect.Type

func (*SubnetRoute) ToSubnetRouteOutput

func (i *SubnetRoute) ToSubnetRouteOutput() SubnetRouteOutput

func (*SubnetRoute) ToSubnetRouteOutputWithContext

func (i *SubnetRoute) ToSubnetRouteOutputWithContext(ctx context.Context) SubnetRouteOutput

type SubnetRouteArgs

type SubnetRouteArgs struct {
	// CIDR block to match on the packet’s destination IP. Changing
	// this creates a new routing entry.
	DestinationCidr pulumi.StringInput
	// IP address of the next hop gateway.  Changing
	// this creates a new routing entry.
	NextHop pulumi.StringInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to configure a routing entry on a subnet. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// routing entry.
	Region pulumi.StringPtrInput
	// ID of the subnet this routing entry belongs to. Changing
	// this creates a new routing entry.
	SubnetId pulumi.StringInput
}

The set of arguments for constructing a SubnetRoute resource.

func (SubnetRouteArgs) ElementType

func (SubnetRouteArgs) ElementType() reflect.Type

type SubnetRouteArray

type SubnetRouteArray []SubnetRouteInput

func (SubnetRouteArray) ElementType

func (SubnetRouteArray) ElementType() reflect.Type

func (SubnetRouteArray) ToSubnetRouteArrayOutput

func (i SubnetRouteArray) ToSubnetRouteArrayOutput() SubnetRouteArrayOutput

func (SubnetRouteArray) ToSubnetRouteArrayOutputWithContext

func (i SubnetRouteArray) ToSubnetRouteArrayOutputWithContext(ctx context.Context) SubnetRouteArrayOutput

type SubnetRouteArrayInput

type SubnetRouteArrayInput interface {
	pulumi.Input

	ToSubnetRouteArrayOutput() SubnetRouteArrayOutput
	ToSubnetRouteArrayOutputWithContext(context.Context) SubnetRouteArrayOutput
}

SubnetRouteArrayInput is an input type that accepts SubnetRouteArray and SubnetRouteArrayOutput values. You can construct a concrete instance of `SubnetRouteArrayInput` via:

SubnetRouteArray{ SubnetRouteArgs{...} }

type SubnetRouteArrayOutput

type SubnetRouteArrayOutput struct{ *pulumi.OutputState }

func (SubnetRouteArrayOutput) ElementType

func (SubnetRouteArrayOutput) ElementType() reflect.Type

func (SubnetRouteArrayOutput) Index

func (SubnetRouteArrayOutput) ToSubnetRouteArrayOutput

func (o SubnetRouteArrayOutput) ToSubnetRouteArrayOutput() SubnetRouteArrayOutput

func (SubnetRouteArrayOutput) ToSubnetRouteArrayOutputWithContext

func (o SubnetRouteArrayOutput) ToSubnetRouteArrayOutputWithContext(ctx context.Context) SubnetRouteArrayOutput

type SubnetRouteInput

type SubnetRouteInput interface {
	pulumi.Input

	ToSubnetRouteOutput() SubnetRouteOutput
	ToSubnetRouteOutputWithContext(ctx context.Context) SubnetRouteOutput
}

type SubnetRouteMap

type SubnetRouteMap map[string]SubnetRouteInput

func (SubnetRouteMap) ElementType

func (SubnetRouteMap) ElementType() reflect.Type

func (SubnetRouteMap) ToSubnetRouteMapOutput

func (i SubnetRouteMap) ToSubnetRouteMapOutput() SubnetRouteMapOutput

func (SubnetRouteMap) ToSubnetRouteMapOutputWithContext

func (i SubnetRouteMap) ToSubnetRouteMapOutputWithContext(ctx context.Context) SubnetRouteMapOutput

type SubnetRouteMapInput

type SubnetRouteMapInput interface {
	pulumi.Input

	ToSubnetRouteMapOutput() SubnetRouteMapOutput
	ToSubnetRouteMapOutputWithContext(context.Context) SubnetRouteMapOutput
}

SubnetRouteMapInput is an input type that accepts SubnetRouteMap and SubnetRouteMapOutput values. You can construct a concrete instance of `SubnetRouteMapInput` via:

SubnetRouteMap{ "key": SubnetRouteArgs{...} }

type SubnetRouteMapOutput

type SubnetRouteMapOutput struct{ *pulumi.OutputState }

func (SubnetRouteMapOutput) ElementType

func (SubnetRouteMapOutput) ElementType() reflect.Type

func (SubnetRouteMapOutput) MapIndex

func (SubnetRouteMapOutput) ToSubnetRouteMapOutput

func (o SubnetRouteMapOutput) ToSubnetRouteMapOutput() SubnetRouteMapOutput

func (SubnetRouteMapOutput) ToSubnetRouteMapOutputWithContext

func (o SubnetRouteMapOutput) ToSubnetRouteMapOutputWithContext(ctx context.Context) SubnetRouteMapOutput

type SubnetRouteOutput

type SubnetRouteOutput struct{ *pulumi.OutputState }

func (SubnetRouteOutput) DestinationCidr added in v3.9.0

func (o SubnetRouteOutput) DestinationCidr() pulumi.StringOutput

CIDR block to match on the packet’s destination IP. Changing this creates a new routing entry.

func (SubnetRouteOutput) ElementType

func (SubnetRouteOutput) ElementType() reflect.Type

func (SubnetRouteOutput) NextHop added in v3.9.0

IP address of the next hop gateway. Changing this creates a new routing entry.

func (SubnetRouteOutput) Region added in v3.9.0

The region in which to obtain the V2 networking client. A networking client is needed to configure a routing entry on a subnet. If omitted, the `region` argument of the provider is used. Changing this creates a new routing entry.

func (SubnetRouteOutput) SubnetId added in v3.9.0

func (o SubnetRouteOutput) SubnetId() pulumi.StringOutput

ID of the subnet this routing entry belongs to. Changing this creates a new routing entry.

func (SubnetRouteOutput) ToSubnetRouteOutput

func (o SubnetRouteOutput) ToSubnetRouteOutput() SubnetRouteOutput

func (SubnetRouteOutput) ToSubnetRouteOutputWithContext

func (o SubnetRouteOutput) ToSubnetRouteOutputWithContext(ctx context.Context) SubnetRouteOutput

type SubnetRouteState

type SubnetRouteState struct {
	// CIDR block to match on the packet’s destination IP. Changing
	// this creates a new routing entry.
	DestinationCidr pulumi.StringPtrInput
	// IP address of the next hop gateway.  Changing
	// this creates a new routing entry.
	NextHop pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to configure a routing entry on a subnet. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// routing entry.
	Region pulumi.StringPtrInput
	// ID of the subnet this routing entry belongs to. Changing
	// this creates a new routing entry.
	SubnetId pulumi.StringPtrInput
}

func (SubnetRouteState) ElementType

func (SubnetRouteState) ElementType() reflect.Type

type SubnetState

type SubnetState struct {
	// The collection of ags assigned on the subnet, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayInput
	// A block declaring the start and end range of
	// the IP addresses available for use with DHCP in this subnet. Multiple
	// `allocationPool` blocks can be declared, providing the subnet with more
	// than one range of IP addresses to use with DHCP. However, each IP range
	// must be from the same CIDR that the subnet is part of.
	// The `allocationPool` block is documented below.
	AllocationPools SubnetAllocationPoolArrayInput
	// A block declaring the start and end range of the IP addresses available for
	// use with DHCP in this subnet.
	// The `allocationPools` block is documented below.
	//
	// Deprecated: use allocationPool instead
	AllocationPoolsCollection SubnetAllocationPoolsCollectionArrayInput
	// CIDR representing IP range for this subnet, based on IP
	// version. You can omit this option if you are creating a subnet from a
	// subnet pool.
	Cidr pulumi.StringPtrInput
	// Human-readable description of the subnet. Changing this
	// updates the name of the existing subnet.
	Description pulumi.StringPtrInput
	// An array of DNS name server names used by hosts
	// in this subnet. Changing this updates the DNS name servers for the existing
	// subnet.
	DnsNameservers pulumi.StringArrayInput
	// The administrative state of the network.
	// Acceptable values are "true" and "false". Changing this value enables or
	// disables the DHCP capabilities of the existing subnet. Defaults to true.
	EnableDhcp pulumi.BoolPtrInput
	// Default gateway used by devices in this subnet.
	// Leaving this blank and not setting `noGateway` will cause a default
	// gateway of `.1` to be used. Changing this updates the gateway IP of the
	// existing subnet.
	GatewayIp pulumi.StringPtrInput
	// (**Deprecated** - use `networking.SubnetRoute`
	// instead) An array of routes that should be used by devices
	// with IPs from this subnet (not including local subnet route). The hostRoute
	// object structure is documented below. Changing this updates the host routes
	// for the existing subnet.
	//
	// Deprecated: Use networking.SubnetRoute instead
	HostRoutes SubnetHostRouteArrayInput
	// IP version, either 4 (default) or 6. Changing this creates a
	// new subnet.
	IpVersion pulumi.IntPtrInput
	// The IPv6 address mode. Valid values are
	// `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6AddressMode pulumi.StringPtrInput
	// The IPv6 Router Advertisement mode. Valid values
	// are `dhcpv6-stateful`, `dhcpv6-stateless`, or `slaac`.
	Ipv6RaMode pulumi.StringPtrInput
	// The name of the subnet. Changing this updates the name of
	// the existing subnet.
	Name pulumi.StringPtrInput
	// The UUID of the parent network. Changing this
	// creates a new subnet.
	NetworkId pulumi.StringPtrInput
	// Do not set a gateway IP on this subnet. Changing
	// this removes or adds a default gateway IP of the existing subnet.
	NoGateway pulumi.BoolPtrInput
	// The prefix length to use when creating a subnet
	// from a subnet pool. The default subnet pool prefix length that was defined
	// when creating the subnet pool will be used if not provided. Changing this
	// creates a new subnet.
	PrefixLength pulumi.IntPtrInput
	// The region in which to obtain the V2 Networking client.
	// A Networking client is needed to create a Neutron subnet. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// subnet.
	Region pulumi.StringPtrInput
	// An array of service types used by the subnet.
	// Changing this updates the service types for the existing subnet.
	ServiceTypes pulumi.StringArrayInput
	// The ID of the subnetpool associated with the subnet.
	SubnetpoolId pulumi.StringPtrInput
	// A set of string tags for the subnet.
	Tags pulumi.StringArrayInput
	// The owner of the subnet. Required if admin wants to
	// create a subnet for another tenant. Changing this creates a new subnet.
	TenantId pulumi.StringPtrInput
	// Map of additional options.
	ValueSpecs pulumi.MapInput
}

func (SubnetState) ElementType

func (SubnetState) ElementType() reflect.Type

type Trunk

type Trunk struct {
	pulumi.CustomResourceState

	// Administrative up/down status for the trunk
	// (must be "true" or "false" if provided). Changing this updates the
	// `adminStateUp` of an existing trunk.
	AdminStateUp pulumi.BoolPtrOutput `pulumi:"adminStateUp"`
	// The collection of tags assigned on the trunk, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayOutput `pulumi:"allTags"`
	// Human-readable description of the trunk. Changing this
	// updates the name of the existing trunk.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// A unique name for the trunk. Changing this
	// updates the `name` of an existing trunk.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the port to be used as the parent port of the
	// trunk. This is the port that should be used as the compute instance network
	// port. Changing this creates a new trunk.
	PortId pulumi.StringOutput `pulumi:"portId"`
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a trunk. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// trunk.
	Region pulumi.StringOutput `pulumi:"region"`
	// The set of ports that will be made subports of the trunk.
	// The structure of each subport is described below.
	SubPorts TrunkSubPortArrayOutput `pulumi:"subPorts"`
	// A set of string tags for the port.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// The owner of the Trunk. Required if admin wants
	// to create a trunk on behalf of another tenant. Changing this creates a new trunk.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
}

Manages a networking V2 trunk resource within OpenStack.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/compute"
"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		network1, err := networking.NewNetwork(ctx, "network1", &networking.NetworkArgs{
			AdminStateUp: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = networking.NewSubnet(ctx, "subnet1", &networking.SubnetArgs{
			NetworkId:  network1.ID(),
			Cidr:       pulumi.String("192.168.1.0/24"),
			IpVersion:  pulumi.Int(4),
			EnableDhcp: pulumi.Bool(true),
			NoGateway:  pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		parentPort1, err := networking.NewPort(ctx, "parentPort1", &networking.PortArgs{
			NetworkId:    network1.ID(),
			AdminStateUp: pulumi.Bool(true),
		}, pulumi.DependsOn([]pulumi.Resource{
			pulumi.Resource("openstack_networking_subnet_v2.subnet_1"),
		}))
		if err != nil {
			return err
		}
		subport1, err := networking.NewPort(ctx, "subport1", &networking.PortArgs{
			NetworkId:    network1.ID(),
			AdminStateUp: pulumi.Bool(true),
		}, pulumi.DependsOn([]pulumi.Resource{
			pulumi.Resource("openstack_networking_subnet_v2.subnet_1"),
		}))
		if err != nil {
			return err
		}
		trunk1, err := networking.NewTrunk(ctx, "trunk1", &networking.TrunkArgs{
			AdminStateUp: pulumi.Bool(true),
			PortId:       parentPort1.ID(),
			SubPorts: networking.TrunkSubPortArray{
				&networking.TrunkSubPortArgs{
					PortId:           subport1.ID(),
					SegmentationId:   pulumi.Int(1),
					SegmentationType: pulumi.String("vlan"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = compute.NewInstance(ctx, "instance1", &compute.InstanceArgs{
			SecurityGroups: pulumi.StringArray{
				pulumi.String("default"),
			},
			Networks: compute.InstanceNetworkArray{
				&compute.InstanceNetworkArgs{
					Port: trunk1.PortId,
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

func GetTrunk

func GetTrunk(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TrunkState, opts ...pulumi.ResourceOption) (*Trunk, error)

GetTrunk gets an existing Trunk 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 NewTrunk

func NewTrunk(ctx *pulumi.Context,
	name string, args *TrunkArgs, opts ...pulumi.ResourceOption) (*Trunk, error)

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

func (*Trunk) ElementType

func (*Trunk) ElementType() reflect.Type

func (*Trunk) ToTrunkOutput

func (i *Trunk) ToTrunkOutput() TrunkOutput

func (*Trunk) ToTrunkOutputWithContext

func (i *Trunk) ToTrunkOutputWithContext(ctx context.Context) TrunkOutput

type TrunkArgs

type TrunkArgs struct {
	// Administrative up/down status for the trunk
	// (must be "true" or "false" if provided). Changing this updates the
	// `adminStateUp` of an existing trunk.
	AdminStateUp pulumi.BoolPtrInput
	// Human-readable description of the trunk. Changing this
	// updates the name of the existing trunk.
	Description pulumi.StringPtrInput
	// A unique name for the trunk. Changing this
	// updates the `name` of an existing trunk.
	Name pulumi.StringPtrInput
	// The ID of the port to be used as the parent port of the
	// trunk. This is the port that should be used as the compute instance network
	// port. Changing this creates a new trunk.
	PortId pulumi.StringInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a trunk. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// trunk.
	Region pulumi.StringPtrInput
	// The set of ports that will be made subports of the trunk.
	// The structure of each subport is described below.
	SubPorts TrunkSubPortArrayInput
	// A set of string tags for the port.
	Tags pulumi.StringArrayInput
	// The owner of the Trunk. Required if admin wants
	// to create a trunk on behalf of another tenant. Changing this creates a new trunk.
	TenantId pulumi.StringPtrInput
}

The set of arguments for constructing a Trunk resource.

func (TrunkArgs) ElementType

func (TrunkArgs) ElementType() reflect.Type

type TrunkArray

type TrunkArray []TrunkInput

func (TrunkArray) ElementType

func (TrunkArray) ElementType() reflect.Type

func (TrunkArray) ToTrunkArrayOutput

func (i TrunkArray) ToTrunkArrayOutput() TrunkArrayOutput

func (TrunkArray) ToTrunkArrayOutputWithContext

func (i TrunkArray) ToTrunkArrayOutputWithContext(ctx context.Context) TrunkArrayOutput

type TrunkArrayInput

type TrunkArrayInput interface {
	pulumi.Input

	ToTrunkArrayOutput() TrunkArrayOutput
	ToTrunkArrayOutputWithContext(context.Context) TrunkArrayOutput
}

TrunkArrayInput is an input type that accepts TrunkArray and TrunkArrayOutput values. You can construct a concrete instance of `TrunkArrayInput` via:

TrunkArray{ TrunkArgs{...} }

type TrunkArrayOutput

type TrunkArrayOutput struct{ *pulumi.OutputState }

func (TrunkArrayOutput) ElementType

func (TrunkArrayOutput) ElementType() reflect.Type

func (TrunkArrayOutput) Index

func (TrunkArrayOutput) ToTrunkArrayOutput

func (o TrunkArrayOutput) ToTrunkArrayOutput() TrunkArrayOutput

func (TrunkArrayOutput) ToTrunkArrayOutputWithContext

func (o TrunkArrayOutput) ToTrunkArrayOutputWithContext(ctx context.Context) TrunkArrayOutput

type TrunkInput

type TrunkInput interface {
	pulumi.Input

	ToTrunkOutput() TrunkOutput
	ToTrunkOutputWithContext(ctx context.Context) TrunkOutput
}

type TrunkMap

type TrunkMap map[string]TrunkInput

func (TrunkMap) ElementType

func (TrunkMap) ElementType() reflect.Type

func (TrunkMap) ToTrunkMapOutput

func (i TrunkMap) ToTrunkMapOutput() TrunkMapOutput

func (TrunkMap) ToTrunkMapOutputWithContext

func (i TrunkMap) ToTrunkMapOutputWithContext(ctx context.Context) TrunkMapOutput

type TrunkMapInput

type TrunkMapInput interface {
	pulumi.Input

	ToTrunkMapOutput() TrunkMapOutput
	ToTrunkMapOutputWithContext(context.Context) TrunkMapOutput
}

TrunkMapInput is an input type that accepts TrunkMap and TrunkMapOutput values. You can construct a concrete instance of `TrunkMapInput` via:

TrunkMap{ "key": TrunkArgs{...} }

type TrunkMapOutput

type TrunkMapOutput struct{ *pulumi.OutputState }

func (TrunkMapOutput) ElementType

func (TrunkMapOutput) ElementType() reflect.Type

func (TrunkMapOutput) MapIndex

func (TrunkMapOutput) ToTrunkMapOutput

func (o TrunkMapOutput) ToTrunkMapOutput() TrunkMapOutput

func (TrunkMapOutput) ToTrunkMapOutputWithContext

func (o TrunkMapOutput) ToTrunkMapOutputWithContext(ctx context.Context) TrunkMapOutput

type TrunkOutput

type TrunkOutput struct{ *pulumi.OutputState }

func (TrunkOutput) AdminStateUp added in v3.9.0

func (o TrunkOutput) AdminStateUp() pulumi.BoolPtrOutput

Administrative up/down status for the trunk (must be "true" or "false" if provided). Changing this updates the `adminStateUp` of an existing trunk.

func (TrunkOutput) AllTags added in v3.9.0

func (o TrunkOutput) AllTags() pulumi.StringArrayOutput

The collection of tags assigned on the trunk, which have been explicitly and implicitly added.

func (TrunkOutput) Description added in v3.9.0

func (o TrunkOutput) Description() pulumi.StringPtrOutput

Human-readable description of the trunk. Changing this updates the name of the existing trunk.

func (TrunkOutput) ElementType

func (TrunkOutput) ElementType() reflect.Type

func (TrunkOutput) Name added in v3.9.0

func (o TrunkOutput) Name() pulumi.StringOutput

A unique name for the trunk. Changing this updates the `name` of an existing trunk.

func (TrunkOutput) PortId added in v3.9.0

func (o TrunkOutput) PortId() pulumi.StringOutput

The ID of the port to be used as the parent port of the trunk. This is the port that should be used as the compute instance network port. Changing this creates a new trunk.

func (TrunkOutput) Region added in v3.9.0

func (o TrunkOutput) Region() pulumi.StringOutput

The region in which to obtain the V2 networking client. A networking client is needed to create a trunk. If omitted, the `region` argument of the provider is used. Changing this creates a new trunk.

func (TrunkOutput) SubPorts added in v3.9.0

func (o TrunkOutput) SubPorts() TrunkSubPortArrayOutput

The set of ports that will be made subports of the trunk. The structure of each subport is described below.

func (TrunkOutput) Tags added in v3.9.0

A set of string tags for the port.

func (TrunkOutput) TenantId added in v3.9.0

func (o TrunkOutput) TenantId() pulumi.StringOutput

The owner of the Trunk. Required if admin wants to create a trunk on behalf of another tenant. Changing this creates a new trunk.

func (TrunkOutput) ToTrunkOutput

func (o TrunkOutput) ToTrunkOutput() TrunkOutput

func (TrunkOutput) ToTrunkOutputWithContext

func (o TrunkOutput) ToTrunkOutputWithContext(ctx context.Context) TrunkOutput

type TrunkState

type TrunkState struct {
	// Administrative up/down status for the trunk
	// (must be "true" or "false" if provided). Changing this updates the
	// `adminStateUp` of an existing trunk.
	AdminStateUp pulumi.BoolPtrInput
	// The collection of tags assigned on the trunk, which have been
	// explicitly and implicitly added.
	AllTags pulumi.StringArrayInput
	// Human-readable description of the trunk. Changing this
	// updates the name of the existing trunk.
	Description pulumi.StringPtrInput
	// A unique name for the trunk. Changing this
	// updates the `name` of an existing trunk.
	Name pulumi.StringPtrInput
	// The ID of the port to be used as the parent port of the
	// trunk. This is the port that should be used as the compute instance network
	// port. Changing this creates a new trunk.
	PortId pulumi.StringPtrInput
	// The region in which to obtain the V2 networking client.
	// A networking client is needed to create a trunk. If omitted, the
	// `region` argument of the provider is used. Changing this creates a new
	// trunk.
	Region pulumi.StringPtrInput
	// The set of ports that will be made subports of the trunk.
	// The structure of each subport is described below.
	SubPorts TrunkSubPortArrayInput
	// A set of string tags for the port.
	Tags pulumi.StringArrayInput
	// The owner of the Trunk. Required if admin wants
	// to create a trunk on behalf of another tenant. Changing this creates a new trunk.
	TenantId pulumi.StringPtrInput
}

func (TrunkState) ElementType

func (TrunkState) ElementType() reflect.Type

type TrunkSubPort

type TrunkSubPort struct {
	// The ID of the port to be made a subport of the trunk.
	PortId string `pulumi:"portId"`
	// The numeric id of the subport segment.
	SegmentationId int `pulumi:"segmentationId"`
	// The segmentation technology to use, e.g., "vlan".
	SegmentationType string `pulumi:"segmentationType"`
}

type TrunkSubPortArgs

type TrunkSubPortArgs struct {
	// The ID of the port to be made a subport of the trunk.
	PortId pulumi.StringInput `pulumi:"portId"`
	// The numeric id of the subport segment.
	SegmentationId pulumi.IntInput `pulumi:"segmentationId"`
	// The segmentation technology to use, e.g., "vlan".
	SegmentationType pulumi.StringInput `pulumi:"segmentationType"`
}

func (TrunkSubPortArgs) ElementType

func (TrunkSubPortArgs) ElementType() reflect.Type

func (TrunkSubPortArgs) ToTrunkSubPortOutput

func (i TrunkSubPortArgs) ToTrunkSubPortOutput() TrunkSubPortOutput

func (TrunkSubPortArgs) ToTrunkSubPortOutputWithContext

func (i TrunkSubPortArgs) ToTrunkSubPortOutputWithContext(ctx context.Context) TrunkSubPortOutput

type TrunkSubPortArray

type TrunkSubPortArray []TrunkSubPortInput

func (TrunkSubPortArray) ElementType

func (TrunkSubPortArray) ElementType() reflect.Type

func (TrunkSubPortArray) ToTrunkSubPortArrayOutput

func (i TrunkSubPortArray) ToTrunkSubPortArrayOutput() TrunkSubPortArrayOutput

func (TrunkSubPortArray) ToTrunkSubPortArrayOutputWithContext

func (i TrunkSubPortArray) ToTrunkSubPortArrayOutputWithContext(ctx context.Context) TrunkSubPortArrayOutput

type TrunkSubPortArrayInput

type TrunkSubPortArrayInput interface {
	pulumi.Input

	ToTrunkSubPortArrayOutput() TrunkSubPortArrayOutput
	ToTrunkSubPortArrayOutputWithContext(context.Context) TrunkSubPortArrayOutput
}

TrunkSubPortArrayInput is an input type that accepts TrunkSubPortArray and TrunkSubPortArrayOutput values. You can construct a concrete instance of `TrunkSubPortArrayInput` via:

TrunkSubPortArray{ TrunkSubPortArgs{...} }

type TrunkSubPortArrayOutput

type TrunkSubPortArrayOutput struct{ *pulumi.OutputState }

func (TrunkSubPortArrayOutput) ElementType

func (TrunkSubPortArrayOutput) ElementType() reflect.Type

func (TrunkSubPortArrayOutput) Index

func (TrunkSubPortArrayOutput) ToTrunkSubPortArrayOutput

func (o TrunkSubPortArrayOutput) ToTrunkSubPortArrayOutput() TrunkSubPortArrayOutput

func (TrunkSubPortArrayOutput) ToTrunkSubPortArrayOutputWithContext

func (o TrunkSubPortArrayOutput) ToTrunkSubPortArrayOutputWithContext(ctx context.Context) TrunkSubPortArrayOutput

type TrunkSubPortInput

type TrunkSubPortInput interface {
	pulumi.Input

	ToTrunkSubPortOutput() TrunkSubPortOutput
	ToTrunkSubPortOutputWithContext(context.Context) TrunkSubPortOutput
}

TrunkSubPortInput is an input type that accepts TrunkSubPortArgs and TrunkSubPortOutput values. You can construct a concrete instance of `TrunkSubPortInput` via:

TrunkSubPortArgs{...}

type TrunkSubPortOutput

type TrunkSubPortOutput struct{ *pulumi.OutputState }

func (TrunkSubPortOutput) ElementType

func (TrunkSubPortOutput) ElementType() reflect.Type

func (TrunkSubPortOutput) PortId

The ID of the port to be made a subport of the trunk.

func (TrunkSubPortOutput) SegmentationId

func (o TrunkSubPortOutput) SegmentationId() pulumi.IntOutput

The numeric id of the subport segment.

func (TrunkSubPortOutput) SegmentationType

func (o TrunkSubPortOutput) SegmentationType() pulumi.StringOutput

The segmentation technology to use, e.g., "vlan".

func (TrunkSubPortOutput) ToTrunkSubPortOutput

func (o TrunkSubPortOutput) ToTrunkSubPortOutput() TrunkSubPortOutput

func (TrunkSubPortOutput) ToTrunkSubPortOutputWithContext

func (o TrunkSubPortOutput) ToTrunkSubPortOutputWithContext(ctx context.Context) TrunkSubPortOutput

Jump to

Keyboard shortcuts

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