nas

package
v2.35.1 Latest Latest
Warning

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

Go to latest
Published: Feb 16, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessGroup

type AccessGroup struct {
	pulumi.CustomResourceState

	// A Name of one Access Group.
	AccessGroupName pulumi.StringOutput `pulumi:"accessGroupName"`
	// A Type of one Access Group. Valid values: `Vpc` and `Classic`.
	AccessGroupType pulumi.StringOutput `pulumi:"accessGroupType"`
	// The Access Group description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The type of file system. Valid values: `standard` and `extreme`. Default to `standard`. Note that the extreme only support Vpc Network.
	FileSystemType pulumi.StringPtrOutput `pulumi:"fileSystemType"`
	// Replaced by `accessGroupName` after version 1.92.0.
	Name pulumi.StringOutput `pulumi:"name"`
	// Replaced by `accessGroupType` after version 1.92.0.
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides a NAS Access Group resource.

In NAS, the permission group acts as a whitelist that allows you to restrict file system access. You can allow specified IP addresses or CIDR blocks to access the file system, and assign different levels of access permission to different IP addresses or CIDR blocks by adding rules to the permission group. For information about NAS Access Group and how to use it, see [What is NAS Access Group](https://www.alibabacloud.com/help/en/doc-detail/27534)

> **NOTE:** Available in v1.33.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := nas.NewAccessGroup(ctx, "foo", &nas.AccessGroupArgs{
			Description: pulumi.String("test_AccessG"),
			Type:        pulumi.String("Classic"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

Example after v1.92.0

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := nas.NewAccessGroup(ctx, "foo", &nas.AccessGroupArgs{
			AccessGroupName: pulumi.String("CreateAccessGroup"),
			AccessGroupType: pulumi.String("Vpc"),
			Description:     pulumi.String("test_AccessG"),
			FileSystemType:  pulumi.String("extreme"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

NAS Access Group can be imported using the id, e.g.

```sh

$ pulumi import alicloud:nas/accessGroup:AccessGroup foo tf_testAccNasConfig:standard

```

func GetAccessGroup

func GetAccessGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccessGroupState, opts ...pulumi.ResourceOption) (*AccessGroup, error)

GetAccessGroup gets an existing AccessGroup 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 NewAccessGroup

func NewAccessGroup(ctx *pulumi.Context,
	name string, args *AccessGroupArgs, opts ...pulumi.ResourceOption) (*AccessGroup, error)

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

func (*AccessGroup) ElementType added in v2.25.1

func (*AccessGroup) ElementType() reflect.Type

func (*AccessGroup) ToAccessGroupOutput added in v2.25.1

func (i *AccessGroup) ToAccessGroupOutput() AccessGroupOutput

func (*AccessGroup) ToAccessGroupOutputWithContext added in v2.25.1

func (i *AccessGroup) ToAccessGroupOutputWithContext(ctx context.Context) AccessGroupOutput

func (*AccessGroup) ToAccessGroupPtrOutput added in v2.35.1

func (i *AccessGroup) ToAccessGroupPtrOutput() AccessGroupPtrOutput

func (*AccessGroup) ToAccessGroupPtrOutputWithContext added in v2.35.1

func (i *AccessGroup) ToAccessGroupPtrOutputWithContext(ctx context.Context) AccessGroupPtrOutput

type AccessGroupArgs

type AccessGroupArgs struct {
	// A Name of one Access Group.
	AccessGroupName pulumi.StringPtrInput
	// A Type of one Access Group. Valid values: `Vpc` and `Classic`.
	AccessGroupType pulumi.StringPtrInput
	// The Access Group description.
	Description pulumi.StringPtrInput
	// The type of file system. Valid values: `standard` and `extreme`. Default to `standard`. Note that the extreme only support Vpc Network.
	FileSystemType pulumi.StringPtrInput
	// Replaced by `accessGroupName` after version 1.92.0.
	Name pulumi.StringPtrInput
	// Replaced by `accessGroupType` after version 1.92.0.
	Type pulumi.StringPtrInput
}

The set of arguments for constructing a AccessGroup resource.

func (AccessGroupArgs) ElementType

func (AccessGroupArgs) ElementType() reflect.Type

type AccessGroupArray added in v2.35.1

type AccessGroupArray []AccessGroupInput

func (AccessGroupArray) ElementType added in v2.35.1

func (AccessGroupArray) ElementType() reflect.Type

func (AccessGroupArray) ToAccessGroupArrayOutput added in v2.35.1

func (i AccessGroupArray) ToAccessGroupArrayOutput() AccessGroupArrayOutput

func (AccessGroupArray) ToAccessGroupArrayOutputWithContext added in v2.35.1

func (i AccessGroupArray) ToAccessGroupArrayOutputWithContext(ctx context.Context) AccessGroupArrayOutput

type AccessGroupArrayInput added in v2.35.1

type AccessGroupArrayInput interface {
	pulumi.Input

	ToAccessGroupArrayOutput() AccessGroupArrayOutput
	ToAccessGroupArrayOutputWithContext(context.Context) AccessGroupArrayOutput
}

AccessGroupArrayInput is an input type that accepts AccessGroupArray and AccessGroupArrayOutput values. You can construct a concrete instance of `AccessGroupArrayInput` via:

AccessGroupArray{ AccessGroupArgs{...} }

type AccessGroupArrayOutput added in v2.35.1

type AccessGroupArrayOutput struct{ *pulumi.OutputState }

func (AccessGroupArrayOutput) ElementType added in v2.35.1

func (AccessGroupArrayOutput) ElementType() reflect.Type

func (AccessGroupArrayOutput) Index added in v2.35.1

func (AccessGroupArrayOutput) ToAccessGroupArrayOutput added in v2.35.1

func (o AccessGroupArrayOutput) ToAccessGroupArrayOutput() AccessGroupArrayOutput

func (AccessGroupArrayOutput) ToAccessGroupArrayOutputWithContext added in v2.35.1

func (o AccessGroupArrayOutput) ToAccessGroupArrayOutputWithContext(ctx context.Context) AccessGroupArrayOutput

type AccessGroupInput added in v2.25.1

type AccessGroupInput interface {
	pulumi.Input

	ToAccessGroupOutput() AccessGroupOutput
	ToAccessGroupOutputWithContext(ctx context.Context) AccessGroupOutput
}

type AccessGroupMap added in v2.35.1

type AccessGroupMap map[string]AccessGroupInput

func (AccessGroupMap) ElementType added in v2.35.1

func (AccessGroupMap) ElementType() reflect.Type

func (AccessGroupMap) ToAccessGroupMapOutput added in v2.35.1

func (i AccessGroupMap) ToAccessGroupMapOutput() AccessGroupMapOutput

func (AccessGroupMap) ToAccessGroupMapOutputWithContext added in v2.35.1

func (i AccessGroupMap) ToAccessGroupMapOutputWithContext(ctx context.Context) AccessGroupMapOutput

type AccessGroupMapInput added in v2.35.1

type AccessGroupMapInput interface {
	pulumi.Input

	ToAccessGroupMapOutput() AccessGroupMapOutput
	ToAccessGroupMapOutputWithContext(context.Context) AccessGroupMapOutput
}

AccessGroupMapInput is an input type that accepts AccessGroupMap and AccessGroupMapOutput values. You can construct a concrete instance of `AccessGroupMapInput` via:

AccessGroupMap{ "key": AccessGroupArgs{...} }

type AccessGroupMapOutput added in v2.35.1

type AccessGroupMapOutput struct{ *pulumi.OutputState }

func (AccessGroupMapOutput) ElementType added in v2.35.1

func (AccessGroupMapOutput) ElementType() reflect.Type

func (AccessGroupMapOutput) MapIndex added in v2.35.1

func (AccessGroupMapOutput) ToAccessGroupMapOutput added in v2.35.1

func (o AccessGroupMapOutput) ToAccessGroupMapOutput() AccessGroupMapOutput

func (AccessGroupMapOutput) ToAccessGroupMapOutputWithContext added in v2.35.1

func (o AccessGroupMapOutput) ToAccessGroupMapOutputWithContext(ctx context.Context) AccessGroupMapOutput

type AccessGroupOutput added in v2.25.1

type AccessGroupOutput struct {
	*pulumi.OutputState
}

func (AccessGroupOutput) ElementType added in v2.25.1

func (AccessGroupOutput) ElementType() reflect.Type

func (AccessGroupOutput) ToAccessGroupOutput added in v2.25.1

func (o AccessGroupOutput) ToAccessGroupOutput() AccessGroupOutput

func (AccessGroupOutput) ToAccessGroupOutputWithContext added in v2.25.1

func (o AccessGroupOutput) ToAccessGroupOutputWithContext(ctx context.Context) AccessGroupOutput

func (AccessGroupOutput) ToAccessGroupPtrOutput added in v2.35.1

func (o AccessGroupOutput) ToAccessGroupPtrOutput() AccessGroupPtrOutput

func (AccessGroupOutput) ToAccessGroupPtrOutputWithContext added in v2.35.1

func (o AccessGroupOutput) ToAccessGroupPtrOutputWithContext(ctx context.Context) AccessGroupPtrOutput

type AccessGroupPtrInput added in v2.35.1

type AccessGroupPtrInput interface {
	pulumi.Input

	ToAccessGroupPtrOutput() AccessGroupPtrOutput
	ToAccessGroupPtrOutputWithContext(ctx context.Context) AccessGroupPtrOutput
}

type AccessGroupPtrOutput added in v2.35.1

type AccessGroupPtrOutput struct {
	*pulumi.OutputState
}

func (AccessGroupPtrOutput) ElementType added in v2.35.1

func (AccessGroupPtrOutput) ElementType() reflect.Type

func (AccessGroupPtrOutput) ToAccessGroupPtrOutput added in v2.35.1

func (o AccessGroupPtrOutput) ToAccessGroupPtrOutput() AccessGroupPtrOutput

func (AccessGroupPtrOutput) ToAccessGroupPtrOutputWithContext added in v2.35.1

func (o AccessGroupPtrOutput) ToAccessGroupPtrOutputWithContext(ctx context.Context) AccessGroupPtrOutput

type AccessGroupState

type AccessGroupState struct {
	// A Name of one Access Group.
	AccessGroupName pulumi.StringPtrInput
	// A Type of one Access Group. Valid values: `Vpc` and `Classic`.
	AccessGroupType pulumi.StringPtrInput
	// The Access Group description.
	Description pulumi.StringPtrInput
	// The type of file system. Valid values: `standard` and `extreme`. Default to `standard`. Note that the extreme only support Vpc Network.
	FileSystemType pulumi.StringPtrInput
	// Replaced by `accessGroupName` after version 1.92.0.
	Name pulumi.StringPtrInput
	// Replaced by `accessGroupType` after version 1.92.0.
	Type pulumi.StringPtrInput
}

func (AccessGroupState) ElementType

func (AccessGroupState) ElementType() reflect.Type

type AccessRule

type AccessRule struct {
	pulumi.CustomResourceState

	// Permission group name.
	AccessGroupName pulumi.StringOutput `pulumi:"accessGroupName"`
	// The nas access rule ID.
	AccessRuleId pulumi.StringOutput `pulumi:"accessRuleId"`
	// Priority level. Range: 1-100. Default value: `1`.
	Priority pulumi.IntPtrOutput `pulumi:"priority"`
	// Read-write permission type: `RDWR` (default), `RDONLY`.
	RwAccessType pulumi.StringPtrOutput `pulumi:"rwAccessType"`
	// Address or address segment.
	SourceCidrIp pulumi.StringOutput `pulumi:"sourceCidrIp"`
	// User permission type: `noSquash` (default), `rootSquash`, `allSquash`.
	UserAccessType pulumi.StringPtrOutput `pulumi:"userAccessType"`
}

Provides a Nas Access Rule resource.

When NAS is activated, the Default VPC Permission Group is automatically generated. It allows all IP addresses in a VPC to access the mount point with full permissions. Full permissions include Read/Write permission with no restriction on root users.

> **NOTE:** Available in v1.34.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		fooAccessGroup, err := nas.NewAccessGroup(ctx, "fooAccessGroup", &nas.AccessGroupArgs{
			AccessGroupName: pulumi.String("tf-NasConfigName"),
			AccessGroupType: pulumi.String("Vpc"),
			Description:     pulumi.String("tf-testAccNasConfig"),
		})
		if err != nil {
			return err
		}
		_, err = nas.NewAccessRule(ctx, "fooAccessRule", &nas.AccessRuleArgs{
			AccessGroupName: fooAccessGroup.AccessGroupName,
			SourceCidrIp:    pulumi.String("168.1.1.0/16"),
			RwAccessType:    pulumi.String("RDWR"),
			UserAccessType:  pulumi.String("no_squash"),
			Priority:        pulumi.Int(2),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Nas Access Rule can be imported using the id, e.g.

```sh

$ pulumi import alicloud:nas/accessRule:AccessRule foo tf-testAccNasConfigName:1

```

func GetAccessRule

func GetAccessRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccessRuleState, opts ...pulumi.ResourceOption) (*AccessRule, error)

GetAccessRule gets an existing AccessRule 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 NewAccessRule

func NewAccessRule(ctx *pulumi.Context,
	name string, args *AccessRuleArgs, opts ...pulumi.ResourceOption) (*AccessRule, error)

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

func (*AccessRule) ElementType added in v2.25.1

func (*AccessRule) ElementType() reflect.Type

func (*AccessRule) ToAccessRuleOutput added in v2.25.1

func (i *AccessRule) ToAccessRuleOutput() AccessRuleOutput

func (*AccessRule) ToAccessRuleOutputWithContext added in v2.25.1

func (i *AccessRule) ToAccessRuleOutputWithContext(ctx context.Context) AccessRuleOutput

func (*AccessRule) ToAccessRulePtrOutput added in v2.35.1

func (i *AccessRule) ToAccessRulePtrOutput() AccessRulePtrOutput

func (*AccessRule) ToAccessRulePtrOutputWithContext added in v2.35.1

func (i *AccessRule) ToAccessRulePtrOutputWithContext(ctx context.Context) AccessRulePtrOutput

type AccessRuleArgs

type AccessRuleArgs struct {
	// Permission group name.
	AccessGroupName pulumi.StringInput
	// Priority level. Range: 1-100. Default value: `1`.
	Priority pulumi.IntPtrInput
	// Read-write permission type: `RDWR` (default), `RDONLY`.
	RwAccessType pulumi.StringPtrInput
	// Address or address segment.
	SourceCidrIp pulumi.StringInput
	// User permission type: `noSquash` (default), `rootSquash`, `allSquash`.
	UserAccessType pulumi.StringPtrInput
}

The set of arguments for constructing a AccessRule resource.

func (AccessRuleArgs) ElementType

func (AccessRuleArgs) ElementType() reflect.Type

type AccessRuleArray added in v2.35.1

type AccessRuleArray []AccessRuleInput

func (AccessRuleArray) ElementType added in v2.35.1

func (AccessRuleArray) ElementType() reflect.Type

func (AccessRuleArray) ToAccessRuleArrayOutput added in v2.35.1

func (i AccessRuleArray) ToAccessRuleArrayOutput() AccessRuleArrayOutput

func (AccessRuleArray) ToAccessRuleArrayOutputWithContext added in v2.35.1

func (i AccessRuleArray) ToAccessRuleArrayOutputWithContext(ctx context.Context) AccessRuleArrayOutput

type AccessRuleArrayInput added in v2.35.1

type AccessRuleArrayInput interface {
	pulumi.Input

	ToAccessRuleArrayOutput() AccessRuleArrayOutput
	ToAccessRuleArrayOutputWithContext(context.Context) AccessRuleArrayOutput
}

AccessRuleArrayInput is an input type that accepts AccessRuleArray and AccessRuleArrayOutput values. You can construct a concrete instance of `AccessRuleArrayInput` via:

AccessRuleArray{ AccessRuleArgs{...} }

type AccessRuleArrayOutput added in v2.35.1

type AccessRuleArrayOutput struct{ *pulumi.OutputState }

func (AccessRuleArrayOutput) ElementType added in v2.35.1

func (AccessRuleArrayOutput) ElementType() reflect.Type

func (AccessRuleArrayOutput) Index added in v2.35.1

func (AccessRuleArrayOutput) ToAccessRuleArrayOutput added in v2.35.1

func (o AccessRuleArrayOutput) ToAccessRuleArrayOutput() AccessRuleArrayOutput

func (AccessRuleArrayOutput) ToAccessRuleArrayOutputWithContext added in v2.35.1

func (o AccessRuleArrayOutput) ToAccessRuleArrayOutputWithContext(ctx context.Context) AccessRuleArrayOutput

type AccessRuleInput added in v2.25.1

type AccessRuleInput interface {
	pulumi.Input

	ToAccessRuleOutput() AccessRuleOutput
	ToAccessRuleOutputWithContext(ctx context.Context) AccessRuleOutput
}

type AccessRuleMap added in v2.35.1

type AccessRuleMap map[string]AccessRuleInput

func (AccessRuleMap) ElementType added in v2.35.1

func (AccessRuleMap) ElementType() reflect.Type

func (AccessRuleMap) ToAccessRuleMapOutput added in v2.35.1

func (i AccessRuleMap) ToAccessRuleMapOutput() AccessRuleMapOutput

func (AccessRuleMap) ToAccessRuleMapOutputWithContext added in v2.35.1

func (i AccessRuleMap) ToAccessRuleMapOutputWithContext(ctx context.Context) AccessRuleMapOutput

type AccessRuleMapInput added in v2.35.1

type AccessRuleMapInput interface {
	pulumi.Input

	ToAccessRuleMapOutput() AccessRuleMapOutput
	ToAccessRuleMapOutputWithContext(context.Context) AccessRuleMapOutput
}

AccessRuleMapInput is an input type that accepts AccessRuleMap and AccessRuleMapOutput values. You can construct a concrete instance of `AccessRuleMapInput` via:

AccessRuleMap{ "key": AccessRuleArgs{...} }

type AccessRuleMapOutput added in v2.35.1

type AccessRuleMapOutput struct{ *pulumi.OutputState }

func (AccessRuleMapOutput) ElementType added in v2.35.1

func (AccessRuleMapOutput) ElementType() reflect.Type

func (AccessRuleMapOutput) MapIndex added in v2.35.1

func (AccessRuleMapOutput) ToAccessRuleMapOutput added in v2.35.1

func (o AccessRuleMapOutput) ToAccessRuleMapOutput() AccessRuleMapOutput

func (AccessRuleMapOutput) ToAccessRuleMapOutputWithContext added in v2.35.1

func (o AccessRuleMapOutput) ToAccessRuleMapOutputWithContext(ctx context.Context) AccessRuleMapOutput

type AccessRuleOutput added in v2.25.1

type AccessRuleOutput struct {
	*pulumi.OutputState
}

func (AccessRuleOutput) ElementType added in v2.25.1

func (AccessRuleOutput) ElementType() reflect.Type

func (AccessRuleOutput) ToAccessRuleOutput added in v2.25.1

func (o AccessRuleOutput) ToAccessRuleOutput() AccessRuleOutput

func (AccessRuleOutput) ToAccessRuleOutputWithContext added in v2.25.1

func (o AccessRuleOutput) ToAccessRuleOutputWithContext(ctx context.Context) AccessRuleOutput

func (AccessRuleOutput) ToAccessRulePtrOutput added in v2.35.1

func (o AccessRuleOutput) ToAccessRulePtrOutput() AccessRulePtrOutput

func (AccessRuleOutput) ToAccessRulePtrOutputWithContext added in v2.35.1

func (o AccessRuleOutput) ToAccessRulePtrOutputWithContext(ctx context.Context) AccessRulePtrOutput

type AccessRulePtrInput added in v2.35.1

type AccessRulePtrInput interface {
	pulumi.Input

	ToAccessRulePtrOutput() AccessRulePtrOutput
	ToAccessRulePtrOutputWithContext(ctx context.Context) AccessRulePtrOutput
}

type AccessRulePtrOutput added in v2.35.1

type AccessRulePtrOutput struct {
	*pulumi.OutputState
}

func (AccessRulePtrOutput) ElementType added in v2.35.1

func (AccessRulePtrOutput) ElementType() reflect.Type

func (AccessRulePtrOutput) ToAccessRulePtrOutput added in v2.35.1

func (o AccessRulePtrOutput) ToAccessRulePtrOutput() AccessRulePtrOutput

func (AccessRulePtrOutput) ToAccessRulePtrOutputWithContext added in v2.35.1

func (o AccessRulePtrOutput) ToAccessRulePtrOutputWithContext(ctx context.Context) AccessRulePtrOutput

type AccessRuleState

type AccessRuleState struct {
	// Permission group name.
	AccessGroupName pulumi.StringPtrInput
	// The nas access rule ID.
	AccessRuleId pulumi.StringPtrInput
	// Priority level. Range: 1-100. Default value: `1`.
	Priority pulumi.IntPtrInput
	// Read-write permission type: `RDWR` (default), `RDONLY`.
	RwAccessType pulumi.StringPtrInput
	// Address or address segment.
	SourceCidrIp pulumi.StringPtrInput
	// User permission type: `noSquash` (default), `rootSquash`, `allSquash`.
	UserAccessType pulumi.StringPtrInput
}

func (AccessRuleState) ElementType

func (AccessRuleState) ElementType() reflect.Type

type FileSystem

type FileSystem struct {
	pulumi.CustomResourceState

	// The File System description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The Protocol Type of a File System. Valid values: `NFS` and `SMB`.
	ProtocolType pulumi.StringOutput `pulumi:"protocolType"`
	// The Storage Type of a File System. Valid values: `Capacity` and `Performance`.
	StorageType pulumi.StringOutput `pulumi:"storageType"`
}

Provides a Nas File System resource.

After activating NAS, you can create a file system and purchase a storage package for it in the NAS console. The NAS console also enables you to view the file system details and remove unnecessary file systems.

For information about NAS file system and how to use it, see [Manage file systems](https://www.alibabacloud.com/help/doc-detail/27530.htm)

> **NOTE:** Available in v1.33.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := nas.NewFileSystem(ctx, "foo", &nas.FileSystemArgs{
			Description:  pulumi.String("tf-testAccNasConfig"),
			ProtocolType: pulumi.String("NFS"),
			StorageType:  pulumi.String("Performance"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Nas File System can be imported using the id, e.g.

```sh

$ pulumi import alicloud:nas/fileSystem:FileSystem foo 1337849c59

```

func GetFileSystem

func GetFileSystem(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FileSystemState, opts ...pulumi.ResourceOption) (*FileSystem, error)

GetFileSystem gets an existing FileSystem 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 NewFileSystem

func NewFileSystem(ctx *pulumi.Context,
	name string, args *FileSystemArgs, opts ...pulumi.ResourceOption) (*FileSystem, error)

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

func (*FileSystem) ElementType added in v2.25.1

func (*FileSystem) ElementType() reflect.Type

func (*FileSystem) ToFileSystemOutput added in v2.25.1

func (i *FileSystem) ToFileSystemOutput() FileSystemOutput

func (*FileSystem) ToFileSystemOutputWithContext added in v2.25.1

func (i *FileSystem) ToFileSystemOutputWithContext(ctx context.Context) FileSystemOutput

func (*FileSystem) ToFileSystemPtrOutput added in v2.35.1

func (i *FileSystem) ToFileSystemPtrOutput() FileSystemPtrOutput

func (*FileSystem) ToFileSystemPtrOutputWithContext added in v2.35.1

func (i *FileSystem) ToFileSystemPtrOutputWithContext(ctx context.Context) FileSystemPtrOutput

type FileSystemArgs

type FileSystemArgs struct {
	// The File System description.
	Description pulumi.StringPtrInput
	// The Protocol Type of a File System. Valid values: `NFS` and `SMB`.
	ProtocolType pulumi.StringInput
	// The Storage Type of a File System. Valid values: `Capacity` and `Performance`.
	StorageType pulumi.StringInput
}

The set of arguments for constructing a FileSystem resource.

func (FileSystemArgs) ElementType

func (FileSystemArgs) ElementType() reflect.Type

type FileSystemArray added in v2.35.1

type FileSystemArray []FileSystemInput

func (FileSystemArray) ElementType added in v2.35.1

func (FileSystemArray) ElementType() reflect.Type

func (FileSystemArray) ToFileSystemArrayOutput added in v2.35.1

func (i FileSystemArray) ToFileSystemArrayOutput() FileSystemArrayOutput

func (FileSystemArray) ToFileSystemArrayOutputWithContext added in v2.35.1

func (i FileSystemArray) ToFileSystemArrayOutputWithContext(ctx context.Context) FileSystemArrayOutput

type FileSystemArrayInput added in v2.35.1

type FileSystemArrayInput interface {
	pulumi.Input

	ToFileSystemArrayOutput() FileSystemArrayOutput
	ToFileSystemArrayOutputWithContext(context.Context) FileSystemArrayOutput
}

FileSystemArrayInput is an input type that accepts FileSystemArray and FileSystemArrayOutput values. You can construct a concrete instance of `FileSystemArrayInput` via:

FileSystemArray{ FileSystemArgs{...} }

type FileSystemArrayOutput added in v2.35.1

type FileSystemArrayOutput struct{ *pulumi.OutputState }

func (FileSystemArrayOutput) ElementType added in v2.35.1

func (FileSystemArrayOutput) ElementType() reflect.Type

func (FileSystemArrayOutput) Index added in v2.35.1

func (FileSystemArrayOutput) ToFileSystemArrayOutput added in v2.35.1

func (o FileSystemArrayOutput) ToFileSystemArrayOutput() FileSystemArrayOutput

func (FileSystemArrayOutput) ToFileSystemArrayOutputWithContext added in v2.35.1

func (o FileSystemArrayOutput) ToFileSystemArrayOutputWithContext(ctx context.Context) FileSystemArrayOutput

type FileSystemInput added in v2.25.1

type FileSystemInput interface {
	pulumi.Input

	ToFileSystemOutput() FileSystemOutput
	ToFileSystemOutputWithContext(ctx context.Context) FileSystemOutput
}

type FileSystemMap added in v2.35.1

type FileSystemMap map[string]FileSystemInput

func (FileSystemMap) ElementType added in v2.35.1

func (FileSystemMap) ElementType() reflect.Type

func (FileSystemMap) ToFileSystemMapOutput added in v2.35.1

func (i FileSystemMap) ToFileSystemMapOutput() FileSystemMapOutput

func (FileSystemMap) ToFileSystemMapOutputWithContext added in v2.35.1

func (i FileSystemMap) ToFileSystemMapOutputWithContext(ctx context.Context) FileSystemMapOutput

type FileSystemMapInput added in v2.35.1

type FileSystemMapInput interface {
	pulumi.Input

	ToFileSystemMapOutput() FileSystemMapOutput
	ToFileSystemMapOutputWithContext(context.Context) FileSystemMapOutput
}

FileSystemMapInput is an input type that accepts FileSystemMap and FileSystemMapOutput values. You can construct a concrete instance of `FileSystemMapInput` via:

FileSystemMap{ "key": FileSystemArgs{...} }

type FileSystemMapOutput added in v2.35.1

type FileSystemMapOutput struct{ *pulumi.OutputState }

func (FileSystemMapOutput) ElementType added in v2.35.1

func (FileSystemMapOutput) ElementType() reflect.Type

func (FileSystemMapOutput) MapIndex added in v2.35.1

func (FileSystemMapOutput) ToFileSystemMapOutput added in v2.35.1

func (o FileSystemMapOutput) ToFileSystemMapOutput() FileSystemMapOutput

func (FileSystemMapOutput) ToFileSystemMapOutputWithContext added in v2.35.1

func (o FileSystemMapOutput) ToFileSystemMapOutputWithContext(ctx context.Context) FileSystemMapOutput

type FileSystemOutput added in v2.25.1

type FileSystemOutput struct {
	*pulumi.OutputState
}

func (FileSystemOutput) ElementType added in v2.25.1

func (FileSystemOutput) ElementType() reflect.Type

func (FileSystemOutput) ToFileSystemOutput added in v2.25.1

func (o FileSystemOutput) ToFileSystemOutput() FileSystemOutput

func (FileSystemOutput) ToFileSystemOutputWithContext added in v2.25.1

func (o FileSystemOutput) ToFileSystemOutputWithContext(ctx context.Context) FileSystemOutput

func (FileSystemOutput) ToFileSystemPtrOutput added in v2.35.1

func (o FileSystemOutput) ToFileSystemPtrOutput() FileSystemPtrOutput

func (FileSystemOutput) ToFileSystemPtrOutputWithContext added in v2.35.1

func (o FileSystemOutput) ToFileSystemPtrOutputWithContext(ctx context.Context) FileSystemPtrOutput

type FileSystemPtrInput added in v2.35.1

type FileSystemPtrInput interface {
	pulumi.Input

	ToFileSystemPtrOutput() FileSystemPtrOutput
	ToFileSystemPtrOutputWithContext(ctx context.Context) FileSystemPtrOutput
}

type FileSystemPtrOutput added in v2.35.1

type FileSystemPtrOutput struct {
	*pulumi.OutputState
}

func (FileSystemPtrOutput) ElementType added in v2.35.1

func (FileSystemPtrOutput) ElementType() reflect.Type

func (FileSystemPtrOutput) ToFileSystemPtrOutput added in v2.35.1

func (o FileSystemPtrOutput) ToFileSystemPtrOutput() FileSystemPtrOutput

func (FileSystemPtrOutput) ToFileSystemPtrOutputWithContext added in v2.35.1

func (o FileSystemPtrOutput) ToFileSystemPtrOutputWithContext(ctx context.Context) FileSystemPtrOutput

type FileSystemState

type FileSystemState struct {
	// The File System description.
	Description pulumi.StringPtrInput
	// The Protocol Type of a File System. Valid values: `NFS` and `SMB`.
	ProtocolType pulumi.StringPtrInput
	// The Storage Type of a File System. Valid values: `Capacity` and `Performance`.
	StorageType pulumi.StringPtrInput
}

func (FileSystemState) ElementType

func (FileSystemState) ElementType() reflect.Type

type GetAccessGroupsArgs

type GetAccessGroupsArgs struct {
	// The name of access group.
	AccessGroupName *string `pulumi:"accessGroupName"`
	// Filter results by a specific AccessGroupType.
	AccessGroupType *string `pulumi:"accessGroupType"`
	// Filter results by a specific Description.
	Description *string `pulumi:"description"`
	// The type of file system. Valid values: `standard` and `extreme`. Default to `standard`.
	FileSystemType *string `pulumi:"fileSystemType"`
	// A regex string to filter AccessGroups by name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// Field `type` has been deprecated from version 1.95.0. Use `accessGroupType` instead.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.95.0. New field 'access_group_type' replaces it.
	Type *string `pulumi:"type"`
	// Specifies whether the time to return is in UTC. Valid values: true and false.
	UseutcDateTime *bool `pulumi:"useutcDateTime"`
}

A collection of arguments for invoking getAccessGroups.

type GetAccessGroupsGroup

type GetAccessGroupsGroup struct {
	// The name of access group.
	AccessGroupName string `pulumi:"accessGroupName"`
	// Filter results by a specific AccessGroupType.
	AccessGroupType string `pulumi:"accessGroupType"`
	// Filter results by a specific Description.
	Description string `pulumi:"description"`
	// This ID of this AccessGroup. It is formatted to “<access_group_id>:<file_system_type>“. Before version 1.95.0, the value is `accessGroupName`.
	Id string `pulumi:"id"`
	// MountTargetCount block of the AccessGroup
	MountTargetCount int `pulumi:"mountTargetCount"`
	// RuleCount of the AccessGroup.
	RuleCount int `pulumi:"ruleCount"`
	// Field `type` has been deprecated from version 1.95.0. Use `accessGroupType` instead.
	Type string `pulumi:"type"`
}

type GetAccessGroupsGroupArgs

type GetAccessGroupsGroupArgs struct {
	// The name of access group.
	AccessGroupName pulumi.StringInput `pulumi:"accessGroupName"`
	// Filter results by a specific AccessGroupType.
	AccessGroupType pulumi.StringInput `pulumi:"accessGroupType"`
	// Filter results by a specific Description.
	Description pulumi.StringInput `pulumi:"description"`
	// This ID of this AccessGroup. It is formatted to “<access_group_id>:<file_system_type>“. Before version 1.95.0, the value is `accessGroupName`.
	Id pulumi.StringInput `pulumi:"id"`
	// MountTargetCount block of the AccessGroup
	MountTargetCount pulumi.IntInput `pulumi:"mountTargetCount"`
	// RuleCount of the AccessGroup.
	RuleCount pulumi.IntInput `pulumi:"ruleCount"`
	// Field `type` has been deprecated from version 1.95.0. Use `accessGroupType` instead.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetAccessGroupsGroupArgs) ElementType

func (GetAccessGroupsGroupArgs) ElementType() reflect.Type

func (GetAccessGroupsGroupArgs) ToGetAccessGroupsGroupOutput

func (i GetAccessGroupsGroupArgs) ToGetAccessGroupsGroupOutput() GetAccessGroupsGroupOutput

func (GetAccessGroupsGroupArgs) ToGetAccessGroupsGroupOutputWithContext

func (i GetAccessGroupsGroupArgs) ToGetAccessGroupsGroupOutputWithContext(ctx context.Context) GetAccessGroupsGroupOutput

type GetAccessGroupsGroupArray

type GetAccessGroupsGroupArray []GetAccessGroupsGroupInput

func (GetAccessGroupsGroupArray) ElementType

func (GetAccessGroupsGroupArray) ElementType() reflect.Type

func (GetAccessGroupsGroupArray) ToGetAccessGroupsGroupArrayOutput

func (i GetAccessGroupsGroupArray) ToGetAccessGroupsGroupArrayOutput() GetAccessGroupsGroupArrayOutput

func (GetAccessGroupsGroupArray) ToGetAccessGroupsGroupArrayOutputWithContext

func (i GetAccessGroupsGroupArray) ToGetAccessGroupsGroupArrayOutputWithContext(ctx context.Context) GetAccessGroupsGroupArrayOutput

type GetAccessGroupsGroupArrayInput

type GetAccessGroupsGroupArrayInput interface {
	pulumi.Input

	ToGetAccessGroupsGroupArrayOutput() GetAccessGroupsGroupArrayOutput
	ToGetAccessGroupsGroupArrayOutputWithContext(context.Context) GetAccessGroupsGroupArrayOutput
}

GetAccessGroupsGroupArrayInput is an input type that accepts GetAccessGroupsGroupArray and GetAccessGroupsGroupArrayOutput values. You can construct a concrete instance of `GetAccessGroupsGroupArrayInput` via:

GetAccessGroupsGroupArray{ GetAccessGroupsGroupArgs{...} }

type GetAccessGroupsGroupArrayOutput

type GetAccessGroupsGroupArrayOutput struct{ *pulumi.OutputState }

func (GetAccessGroupsGroupArrayOutput) ElementType

func (GetAccessGroupsGroupArrayOutput) Index

func (GetAccessGroupsGroupArrayOutput) ToGetAccessGroupsGroupArrayOutput

func (o GetAccessGroupsGroupArrayOutput) ToGetAccessGroupsGroupArrayOutput() GetAccessGroupsGroupArrayOutput

func (GetAccessGroupsGroupArrayOutput) ToGetAccessGroupsGroupArrayOutputWithContext

func (o GetAccessGroupsGroupArrayOutput) ToGetAccessGroupsGroupArrayOutputWithContext(ctx context.Context) GetAccessGroupsGroupArrayOutput

type GetAccessGroupsGroupInput

type GetAccessGroupsGroupInput interface {
	pulumi.Input

	ToGetAccessGroupsGroupOutput() GetAccessGroupsGroupOutput
	ToGetAccessGroupsGroupOutputWithContext(context.Context) GetAccessGroupsGroupOutput
}

GetAccessGroupsGroupInput is an input type that accepts GetAccessGroupsGroupArgs and GetAccessGroupsGroupOutput values. You can construct a concrete instance of `GetAccessGroupsGroupInput` via:

GetAccessGroupsGroupArgs{...}

type GetAccessGroupsGroupOutput

type GetAccessGroupsGroupOutput struct{ *pulumi.OutputState }

func (GetAccessGroupsGroupOutput) AccessGroupName added in v2.16.0

func (o GetAccessGroupsGroupOutput) AccessGroupName() pulumi.StringOutput

The name of access group.

func (GetAccessGroupsGroupOutput) AccessGroupType added in v2.16.0

func (o GetAccessGroupsGroupOutput) AccessGroupType() pulumi.StringOutput

Filter results by a specific AccessGroupType.

func (GetAccessGroupsGroupOutput) Description

Filter results by a specific Description.

func (GetAccessGroupsGroupOutput) ElementType

func (GetAccessGroupsGroupOutput) ElementType() reflect.Type

func (GetAccessGroupsGroupOutput) Id

This ID of this AccessGroup. It is formatted to “<access_group_id>:<file_system_type>“. Before version 1.95.0, the value is `accessGroupName`.

func (GetAccessGroupsGroupOutput) MountTargetCount

func (o GetAccessGroupsGroupOutput) MountTargetCount() pulumi.IntOutput

MountTargetCount block of the AccessGroup

func (GetAccessGroupsGroupOutput) RuleCount

RuleCount of the AccessGroup.

func (GetAccessGroupsGroupOutput) ToGetAccessGroupsGroupOutput

func (o GetAccessGroupsGroupOutput) ToGetAccessGroupsGroupOutput() GetAccessGroupsGroupOutput

func (GetAccessGroupsGroupOutput) ToGetAccessGroupsGroupOutputWithContext

func (o GetAccessGroupsGroupOutput) ToGetAccessGroupsGroupOutputWithContext(ctx context.Context) GetAccessGroupsGroupOutput

func (GetAccessGroupsGroupOutput) Type

Field `type` has been deprecated from version 1.95.0. Use `accessGroupType` instead.

type GetAccessGroupsResult

type GetAccessGroupsResult struct {
	// (Available in 1.95.0+) The name of the AccessGroup.
	AccessGroupName *string `pulumi:"accessGroupName"`
	// (Available in 1.95.0+) The type of the AccessGroup.
	AccessGroupType *string `pulumi:"accessGroupType"`
	// Description of the AccessGroup.
	Description    *string `pulumi:"description"`
	FileSystemType *string `pulumi:"fileSystemType"`
	// A list of AccessGroups. Each element contains the following attributes:
	Groups []GetAccessGroupsGroup `pulumi:"groups"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of AccessGroup IDs, the value is set to `names`. After version 1.95.0 the item value as `<access_group_id>:<file_system_type>`.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of AccessGroup names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// (Deprecated in v1.95.0+) AccessGroupType of the AccessGroup. The Field replace by `accessGroupType` after version 1.95.0.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.95.0. New field 'access_group_type' replaces it.
	Type           *string `pulumi:"type"`
	UseutcDateTime *bool   `pulumi:"useutcDateTime"`
}

A collection of values returned by getAccessGroups.

func GetAccessGroups

func GetAccessGroups(ctx *pulumi.Context, args *GetAccessGroupsArgs, opts ...pulumi.InvokeOption) (*GetAccessGroupsResult, error)

This data source provides user-available access groups. Use when you can create mount points

> NOTE: Available in 1.35.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "^foo"
		opt1 := "Classic"
		opt2 := "tf-testAccAccessGroupsdatasource"
		example, err := nas.GetAccessGroups(ctx, &nas.GetAccessGroupsArgs{
			NameRegex:       &opt0,
			AccessGroupType: &opt1,
			Description:     &opt2,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("alicloudNasAccessGroupsId", example.Groups[0].Id)
		return nil
	})
}

```

type GetAccessRulesArgs

type GetAccessRulesArgs struct {
	// Filter results by a specific AccessGroupName.
	AccessGroupName string `pulumi:"accessGroupName"`
	// A list of rule IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// Filter results by a specific RWAccess.
	RwAccess *string `pulumi:"rwAccess"`
	// Filter results by a specific SourceCidrIp.
	SourceCidrIp *string `pulumi:"sourceCidrIp"`
	// Filter results by a specific UserAccess.
	UserAccess *string `pulumi:"userAccess"`
}

A collection of arguments for invoking getAccessRules.

type GetAccessRulesResult

type GetAccessRulesResult struct {
	AccessGroupName string `pulumi:"accessGroupName"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of rule IDs, Each element set to `accessRuleId` (Each element formats as `<access_group_name>:<access_rule_id>` before 1.53.0).
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// A list of AccessRules. Each element contains the following attributes:
	Rules []GetAccessRulesRule `pulumi:"rules"`
	// RWAccess of the AccessRule.
	RwAccess *string `pulumi:"rwAccess"`
	// SourceCidrIp of the AccessRule.
	SourceCidrIp *string `pulumi:"sourceCidrIp"`
	// UserAccess of the AccessRule
	UserAccess *string `pulumi:"userAccess"`
}

A collection of values returned by getAccessRules.

func GetAccessRules

func GetAccessRules(ctx *pulumi.Context, args *GetAccessRulesArgs, opts ...pulumi.InvokeOption) (*GetAccessRulesResult, error)

This data source provides AccessRule available to the user.

> **NOTE**: Available in 1.35.0+

type GetAccessRulesRule

type GetAccessRulesRule struct {
	// AccessRuleId of the AccessRule.
	AccessRuleId string `pulumi:"accessRuleId"`
	// Priority of the AccessRule.
	Priority int `pulumi:"priority"`
	// Filter results by a specific RWAccess.
	RwAccess string `pulumi:"rwAccess"`
	// Filter results by a specific SourceCidrIp.
	SourceCidrIp string `pulumi:"sourceCidrIp"`
	// Filter results by a specific UserAccess.
	UserAccess string `pulumi:"userAccess"`
}

type GetAccessRulesRuleArgs

type GetAccessRulesRuleArgs struct {
	// AccessRuleId of the AccessRule.
	AccessRuleId pulumi.StringInput `pulumi:"accessRuleId"`
	// Priority of the AccessRule.
	Priority pulumi.IntInput `pulumi:"priority"`
	// Filter results by a specific RWAccess.
	RwAccess pulumi.StringInput `pulumi:"rwAccess"`
	// Filter results by a specific SourceCidrIp.
	SourceCidrIp pulumi.StringInput `pulumi:"sourceCidrIp"`
	// Filter results by a specific UserAccess.
	UserAccess pulumi.StringInput `pulumi:"userAccess"`
}

func (GetAccessRulesRuleArgs) ElementType

func (GetAccessRulesRuleArgs) ElementType() reflect.Type

func (GetAccessRulesRuleArgs) ToGetAccessRulesRuleOutput

func (i GetAccessRulesRuleArgs) ToGetAccessRulesRuleOutput() GetAccessRulesRuleOutput

func (GetAccessRulesRuleArgs) ToGetAccessRulesRuleOutputWithContext

func (i GetAccessRulesRuleArgs) ToGetAccessRulesRuleOutputWithContext(ctx context.Context) GetAccessRulesRuleOutput

type GetAccessRulesRuleArray

type GetAccessRulesRuleArray []GetAccessRulesRuleInput

func (GetAccessRulesRuleArray) ElementType

func (GetAccessRulesRuleArray) ElementType() reflect.Type

func (GetAccessRulesRuleArray) ToGetAccessRulesRuleArrayOutput

func (i GetAccessRulesRuleArray) ToGetAccessRulesRuleArrayOutput() GetAccessRulesRuleArrayOutput

func (GetAccessRulesRuleArray) ToGetAccessRulesRuleArrayOutputWithContext

func (i GetAccessRulesRuleArray) ToGetAccessRulesRuleArrayOutputWithContext(ctx context.Context) GetAccessRulesRuleArrayOutput

type GetAccessRulesRuleArrayInput

type GetAccessRulesRuleArrayInput interface {
	pulumi.Input

	ToGetAccessRulesRuleArrayOutput() GetAccessRulesRuleArrayOutput
	ToGetAccessRulesRuleArrayOutputWithContext(context.Context) GetAccessRulesRuleArrayOutput
}

GetAccessRulesRuleArrayInput is an input type that accepts GetAccessRulesRuleArray and GetAccessRulesRuleArrayOutput values. You can construct a concrete instance of `GetAccessRulesRuleArrayInput` via:

GetAccessRulesRuleArray{ GetAccessRulesRuleArgs{...} }

type GetAccessRulesRuleArrayOutput

type GetAccessRulesRuleArrayOutput struct{ *pulumi.OutputState }

func (GetAccessRulesRuleArrayOutput) ElementType

func (GetAccessRulesRuleArrayOutput) Index

func (GetAccessRulesRuleArrayOutput) ToGetAccessRulesRuleArrayOutput

func (o GetAccessRulesRuleArrayOutput) ToGetAccessRulesRuleArrayOutput() GetAccessRulesRuleArrayOutput

func (GetAccessRulesRuleArrayOutput) ToGetAccessRulesRuleArrayOutputWithContext

func (o GetAccessRulesRuleArrayOutput) ToGetAccessRulesRuleArrayOutputWithContext(ctx context.Context) GetAccessRulesRuleArrayOutput

type GetAccessRulesRuleInput

type GetAccessRulesRuleInput interface {
	pulumi.Input

	ToGetAccessRulesRuleOutput() GetAccessRulesRuleOutput
	ToGetAccessRulesRuleOutputWithContext(context.Context) GetAccessRulesRuleOutput
}

GetAccessRulesRuleInput is an input type that accepts GetAccessRulesRuleArgs and GetAccessRulesRuleOutput values. You can construct a concrete instance of `GetAccessRulesRuleInput` via:

GetAccessRulesRuleArgs{...}

type GetAccessRulesRuleOutput

type GetAccessRulesRuleOutput struct{ *pulumi.OutputState }

func (GetAccessRulesRuleOutput) AccessRuleId

func (o GetAccessRulesRuleOutput) AccessRuleId() pulumi.StringOutput

AccessRuleId of the AccessRule.

func (GetAccessRulesRuleOutput) ElementType

func (GetAccessRulesRuleOutput) ElementType() reflect.Type

func (GetAccessRulesRuleOutput) Priority

Priority of the AccessRule.

func (GetAccessRulesRuleOutput) RwAccess

Filter results by a specific RWAccess.

func (GetAccessRulesRuleOutput) SourceCidrIp

func (o GetAccessRulesRuleOutput) SourceCidrIp() pulumi.StringOutput

Filter results by a specific SourceCidrIp.

func (GetAccessRulesRuleOutput) ToGetAccessRulesRuleOutput

func (o GetAccessRulesRuleOutput) ToGetAccessRulesRuleOutput() GetAccessRulesRuleOutput

func (GetAccessRulesRuleOutput) ToGetAccessRulesRuleOutputWithContext

func (o GetAccessRulesRuleOutput) ToGetAccessRulesRuleOutputWithContext(ctx context.Context) GetAccessRulesRuleOutput

func (GetAccessRulesRuleOutput) UserAccess

Filter results by a specific UserAccess.

type GetFileSystemsArgs

type GetFileSystemsArgs struct {
	// A regex string to filter the results by the :FileSystem description.
	DescriptionRegex *string `pulumi:"descriptionRegex"`
	// A list of FileSystemId.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// Filter results by a specific ProtocolType. Valid values: `NFS` and `SMB`.
	ProtocolType *string `pulumi:"protocolType"`
	// Filter results by a specific StorageType. Valid values: `Capacity` and `Performance`.
	StorageType *string `pulumi:"storageType"`
}

A collection of arguments for invoking getFileSystems.

type GetFileSystemsResult

type GetFileSystemsResult struct {
	DescriptionRegex *string `pulumi:"descriptionRegex"`
	// A list of FileSystem descriptions.
	Descriptions []string `pulumi:"descriptions"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of FileSystem Id.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// ProtocolType block of the FileSystem
	ProtocolType *string `pulumi:"protocolType"`
	// StorageType block of the FileSystem.
	StorageType *string `pulumi:"storageType"`
	// A list of VPCs. Each element contains the following attributes:
	Systems []GetFileSystemsSystem `pulumi:"systems"`
}

A collection of values returned by getFileSystems.

func GetFileSystems

func GetFileSystems(ctx *pulumi.Context, args *GetFileSystemsArgs, opts ...pulumi.InvokeOption) (*GetFileSystemsResult, error)

This data source provides FileSystems available to the user.

> **NOTE**: Available in 1.35.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "NFS"
		fs, err := nas.GetFileSystems(ctx, &nas.GetFileSystemsArgs{
			Description:  alicloud_nas_file_system.Foo.Description,
			ProtocolType: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("alicloudNasFileSystemsId", fs.Systems[0].Id)
		return nil
	})
}

```

type GetFileSystemsSystem

type GetFileSystemsSystem struct {
	// Time of creation.
	CreateTime string `pulumi:"createTime"`
	// Destription of the FileSystem.
	Description string `pulumi:"description"`
	// ID of the FileSystem.
	Id string `pulumi:"id"`
	// MeteredSize of the FileSystem.
	MeteredSize int `pulumi:"meteredSize"`
	// Filter results by a specific ProtocolType. Valid values: `NFS` and `SMB`.
	ProtocolType string `pulumi:"protocolType"`
	// ID of the region where the FileSystem is located.
	RegionId string `pulumi:"regionId"`
	// Filter results by a specific StorageType. Valid values: `Capacity` and `Performance`.
	StorageType string `pulumi:"storageType"`
}

type GetFileSystemsSystemArgs

type GetFileSystemsSystemArgs struct {
	// Time of creation.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// Destription of the FileSystem.
	Description pulumi.StringInput `pulumi:"description"`
	// ID of the FileSystem.
	Id pulumi.StringInput `pulumi:"id"`
	// MeteredSize of the FileSystem.
	MeteredSize pulumi.IntInput `pulumi:"meteredSize"`
	// Filter results by a specific ProtocolType. Valid values: `NFS` and `SMB`.
	ProtocolType pulumi.StringInput `pulumi:"protocolType"`
	// ID of the region where the FileSystem is located.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// Filter results by a specific StorageType. Valid values: `Capacity` and `Performance`.
	StorageType pulumi.StringInput `pulumi:"storageType"`
}

func (GetFileSystemsSystemArgs) ElementType

func (GetFileSystemsSystemArgs) ElementType() reflect.Type

func (GetFileSystemsSystemArgs) ToGetFileSystemsSystemOutput

func (i GetFileSystemsSystemArgs) ToGetFileSystemsSystemOutput() GetFileSystemsSystemOutput

func (GetFileSystemsSystemArgs) ToGetFileSystemsSystemOutputWithContext

func (i GetFileSystemsSystemArgs) ToGetFileSystemsSystemOutputWithContext(ctx context.Context) GetFileSystemsSystemOutput

type GetFileSystemsSystemArray

type GetFileSystemsSystemArray []GetFileSystemsSystemInput

func (GetFileSystemsSystemArray) ElementType

func (GetFileSystemsSystemArray) ElementType() reflect.Type

func (GetFileSystemsSystemArray) ToGetFileSystemsSystemArrayOutput

func (i GetFileSystemsSystemArray) ToGetFileSystemsSystemArrayOutput() GetFileSystemsSystemArrayOutput

func (GetFileSystemsSystemArray) ToGetFileSystemsSystemArrayOutputWithContext

func (i GetFileSystemsSystemArray) ToGetFileSystemsSystemArrayOutputWithContext(ctx context.Context) GetFileSystemsSystemArrayOutput

type GetFileSystemsSystemArrayInput

type GetFileSystemsSystemArrayInput interface {
	pulumi.Input

	ToGetFileSystemsSystemArrayOutput() GetFileSystemsSystemArrayOutput
	ToGetFileSystemsSystemArrayOutputWithContext(context.Context) GetFileSystemsSystemArrayOutput
}

GetFileSystemsSystemArrayInput is an input type that accepts GetFileSystemsSystemArray and GetFileSystemsSystemArrayOutput values. You can construct a concrete instance of `GetFileSystemsSystemArrayInput` via:

GetFileSystemsSystemArray{ GetFileSystemsSystemArgs{...} }

type GetFileSystemsSystemArrayOutput

type GetFileSystemsSystemArrayOutput struct{ *pulumi.OutputState }

func (GetFileSystemsSystemArrayOutput) ElementType

func (GetFileSystemsSystemArrayOutput) Index

func (GetFileSystemsSystemArrayOutput) ToGetFileSystemsSystemArrayOutput

func (o GetFileSystemsSystemArrayOutput) ToGetFileSystemsSystemArrayOutput() GetFileSystemsSystemArrayOutput

func (GetFileSystemsSystemArrayOutput) ToGetFileSystemsSystemArrayOutputWithContext

func (o GetFileSystemsSystemArrayOutput) ToGetFileSystemsSystemArrayOutputWithContext(ctx context.Context) GetFileSystemsSystemArrayOutput

type GetFileSystemsSystemInput

type GetFileSystemsSystemInput interface {
	pulumi.Input

	ToGetFileSystemsSystemOutput() GetFileSystemsSystemOutput
	ToGetFileSystemsSystemOutputWithContext(context.Context) GetFileSystemsSystemOutput
}

GetFileSystemsSystemInput is an input type that accepts GetFileSystemsSystemArgs and GetFileSystemsSystemOutput values. You can construct a concrete instance of `GetFileSystemsSystemInput` via:

GetFileSystemsSystemArgs{...}

type GetFileSystemsSystemOutput

type GetFileSystemsSystemOutput struct{ *pulumi.OutputState }

func (GetFileSystemsSystemOutput) CreateTime

Time of creation.

func (GetFileSystemsSystemOutput) Description

Destription of the FileSystem.

func (GetFileSystemsSystemOutput) ElementType

func (GetFileSystemsSystemOutput) ElementType() reflect.Type

func (GetFileSystemsSystemOutput) Id

ID of the FileSystem.

func (GetFileSystemsSystemOutput) MeteredSize

MeteredSize of the FileSystem.

func (GetFileSystemsSystemOutput) ProtocolType

Filter results by a specific ProtocolType. Valid values: `NFS` and `SMB`.

func (GetFileSystemsSystemOutput) RegionId

ID of the region where the FileSystem is located.

func (GetFileSystemsSystemOutput) StorageType

Filter results by a specific StorageType. Valid values: `Capacity` and `Performance`.

func (GetFileSystemsSystemOutput) ToGetFileSystemsSystemOutput

func (o GetFileSystemsSystemOutput) ToGetFileSystemsSystemOutput() GetFileSystemsSystemOutput

func (GetFileSystemsSystemOutput) ToGetFileSystemsSystemOutputWithContext

func (o GetFileSystemsSystemOutput) ToGetFileSystemsSystemOutputWithContext(ctx context.Context) GetFileSystemsSystemOutput

type GetMountTargetsArgs

type GetMountTargetsArgs struct {
	// Filter results by a specific AccessGroupName.
	AccessGroupName *string `pulumi:"accessGroupName"`
	// The ID of the FileSystem that owns the MountTarget.
	FileSystemId string `pulumi:"fileSystemId"`
	// A list of MountTargetDomain.
	Ids []string `pulumi:"ids"`
	// Field `mountTargetDomain` has been deprecated from provider version 1.53.0. New field `ids` replaces it.
	//
	// Deprecated: Field 'mount_target_domain' has been deprecated from provider version 1.53.0. New field 'ids' replaces it.
	MountTargetDomain *string `pulumi:"mountTargetDomain"`
	// Filter results by a specific NetworkType.
	NetworkType *string `pulumi:"networkType"`
	OutputFile  *string `pulumi:"outputFile"`
	// Filter results by the status of mount target. Valid values: `Active`, `Inactive` and `Pending`.
	Status *string `pulumi:"status"`
	// Field `type` has been deprecated from provider version 1.95.0. New field `networkType` replaces it.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.95.0. New field 'network_type' replaces it.
	Type *string `pulumi:"type"`
	// Filter results by a specific VpcId.
	VpcId *string `pulumi:"vpcId"`
	// Filter results by a specific VSwitchId.
	VswitchId *string `pulumi:"vswitchId"`
}

A collection of arguments for invoking getMountTargets.

type GetMountTargetsResult

type GetMountTargetsResult struct {
	// AccessGroup of The MountTarget.
	AccessGroupName *string `pulumi:"accessGroupName"`
	FileSystemId    string  `pulumi:"fileSystemId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of MountTargetDomain.
	Ids []string `pulumi:"ids"`
	// MountTargetDomain of the MountTarget.
	// * `type`- Field `type` has been deprecated from provider version 1.95.0. New field `networkType` replaces it.
	// * `networkType`- (Available 1.95.0+) NetworkType of The MountTarget.
	// * `status`- (Available 1.95.0+) The status of the mount target.
	//
	// Deprecated: Field 'mount_target_domain' has been deprecated from provider version 1.53.0. New field 'ids' replaces it.
	MountTargetDomain *string `pulumi:"mountTargetDomain"`
	NetworkType       *string `pulumi:"networkType"`
	OutputFile        *string `pulumi:"outputFile"`
	Status            *string `pulumi:"status"`
	// A list of MountTargetDomains. Each element contains the following attributes:
	Targets []GetMountTargetsTarget `pulumi:"targets"`
	// Deprecated: Field 'type' has been deprecated from provider version 1.95.0. New field 'network_type' replaces it.
	Type *string `pulumi:"type"`
	// VpcId of The MountTarget.
	VpcId *string `pulumi:"vpcId"`
	// VSwitchId of The MountTarget.
	VswitchId *string `pulumi:"vswitchId"`
}

A collection of values returned by getMountTargets.

func GetMountTargets

func GetMountTargets(ctx *pulumi.Context, args *GetMountTargetsArgs, opts ...pulumi.InvokeOption) (*GetMountTargetsResult, error)

This data source provides MountTargets available to the user.

> **NOTE**: Available in 1.35.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "tf-testAccNasConfig"
		example, err := nas.GetMountTargets(ctx, &nas.GetMountTargetsArgs{
			FileSystemId:    "1a2sc4d",
			AccessGroupName: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("theFirstMountTargetDomain", example.Targets[0].Id)
		return nil
	})
}

```

type GetMountTargetsTarget

type GetMountTargetsTarget struct {
	// Filter results by a specific AccessGroupName.
	AccessGroupName string `pulumi:"accessGroupName"`
	// ID of the MountTargetDomain.
	Id string `pulumi:"id"`
	// Field `mountTargetDomain` has been deprecated from provider version 1.53.0. New field `ids` replaces it.
	MountTargetDomain string `pulumi:"mountTargetDomain"`
	// Filter results by a specific NetworkType.
	NetworkType string `pulumi:"networkType"`
	// Filter results by the status of mount target. Valid values: `Active`, `Inactive` and `Pending`.
	Status string `pulumi:"status"`
	// Field `type` has been deprecated from provider version 1.95.0. New field `networkType` replaces it.
	Type string `pulumi:"type"`
	// Filter results by a specific VpcId.
	VpcId string `pulumi:"vpcId"`
	// Filter results by a specific VSwitchId.
	VswitchId string `pulumi:"vswitchId"`
}

type GetMountTargetsTargetArgs

type GetMountTargetsTargetArgs struct {
	// Filter results by a specific AccessGroupName.
	AccessGroupName pulumi.StringInput `pulumi:"accessGroupName"`
	// ID of the MountTargetDomain.
	Id pulumi.StringInput `pulumi:"id"`
	// Field `mountTargetDomain` has been deprecated from provider version 1.53.0. New field `ids` replaces it.
	MountTargetDomain pulumi.StringInput `pulumi:"mountTargetDomain"`
	// Filter results by a specific NetworkType.
	NetworkType pulumi.StringInput `pulumi:"networkType"`
	// Filter results by the status of mount target. Valid values: `Active`, `Inactive` and `Pending`.
	Status pulumi.StringInput `pulumi:"status"`
	// Field `type` has been deprecated from provider version 1.95.0. New field `networkType` replaces it.
	Type pulumi.StringInput `pulumi:"type"`
	// Filter results by a specific VpcId.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// Filter results by a specific VSwitchId.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetMountTargetsTargetArgs) ElementType

func (GetMountTargetsTargetArgs) ElementType() reflect.Type

func (GetMountTargetsTargetArgs) ToGetMountTargetsTargetOutput

func (i GetMountTargetsTargetArgs) ToGetMountTargetsTargetOutput() GetMountTargetsTargetOutput

func (GetMountTargetsTargetArgs) ToGetMountTargetsTargetOutputWithContext

func (i GetMountTargetsTargetArgs) ToGetMountTargetsTargetOutputWithContext(ctx context.Context) GetMountTargetsTargetOutput

type GetMountTargetsTargetArray

type GetMountTargetsTargetArray []GetMountTargetsTargetInput

func (GetMountTargetsTargetArray) ElementType

func (GetMountTargetsTargetArray) ElementType() reflect.Type

func (GetMountTargetsTargetArray) ToGetMountTargetsTargetArrayOutput

func (i GetMountTargetsTargetArray) ToGetMountTargetsTargetArrayOutput() GetMountTargetsTargetArrayOutput

func (GetMountTargetsTargetArray) ToGetMountTargetsTargetArrayOutputWithContext

func (i GetMountTargetsTargetArray) ToGetMountTargetsTargetArrayOutputWithContext(ctx context.Context) GetMountTargetsTargetArrayOutput

type GetMountTargetsTargetArrayInput

type GetMountTargetsTargetArrayInput interface {
	pulumi.Input

	ToGetMountTargetsTargetArrayOutput() GetMountTargetsTargetArrayOutput
	ToGetMountTargetsTargetArrayOutputWithContext(context.Context) GetMountTargetsTargetArrayOutput
}

GetMountTargetsTargetArrayInput is an input type that accepts GetMountTargetsTargetArray and GetMountTargetsTargetArrayOutput values. You can construct a concrete instance of `GetMountTargetsTargetArrayInput` via:

GetMountTargetsTargetArray{ GetMountTargetsTargetArgs{...} }

type GetMountTargetsTargetArrayOutput

type GetMountTargetsTargetArrayOutput struct{ *pulumi.OutputState }

func (GetMountTargetsTargetArrayOutput) ElementType

func (GetMountTargetsTargetArrayOutput) Index

func (GetMountTargetsTargetArrayOutput) ToGetMountTargetsTargetArrayOutput

func (o GetMountTargetsTargetArrayOutput) ToGetMountTargetsTargetArrayOutput() GetMountTargetsTargetArrayOutput

func (GetMountTargetsTargetArrayOutput) ToGetMountTargetsTargetArrayOutputWithContext

func (o GetMountTargetsTargetArrayOutput) ToGetMountTargetsTargetArrayOutputWithContext(ctx context.Context) GetMountTargetsTargetArrayOutput

type GetMountTargetsTargetInput

type GetMountTargetsTargetInput interface {
	pulumi.Input

	ToGetMountTargetsTargetOutput() GetMountTargetsTargetOutput
	ToGetMountTargetsTargetOutputWithContext(context.Context) GetMountTargetsTargetOutput
}

GetMountTargetsTargetInput is an input type that accepts GetMountTargetsTargetArgs and GetMountTargetsTargetOutput values. You can construct a concrete instance of `GetMountTargetsTargetInput` via:

GetMountTargetsTargetArgs{...}

type GetMountTargetsTargetOutput

type GetMountTargetsTargetOutput struct{ *pulumi.OutputState }

func (GetMountTargetsTargetOutput) AccessGroupName

func (o GetMountTargetsTargetOutput) AccessGroupName() pulumi.StringOutput

Filter results by a specific AccessGroupName.

func (GetMountTargetsTargetOutput) ElementType

func (GetMountTargetsTargetOutput) Id

ID of the MountTargetDomain.

func (GetMountTargetsTargetOutput) MountTargetDomain

func (o GetMountTargetsTargetOutput) MountTargetDomain() pulumi.StringOutput

Field `mountTargetDomain` has been deprecated from provider version 1.53.0. New field `ids` replaces it.

func (GetMountTargetsTargetOutput) NetworkType added in v2.16.0

Filter results by a specific NetworkType.

func (GetMountTargetsTargetOutput) Status added in v2.16.0

Filter results by the status of mount target. Valid values: `Active`, `Inactive` and `Pending`.

func (GetMountTargetsTargetOutput) ToGetMountTargetsTargetOutput

func (o GetMountTargetsTargetOutput) ToGetMountTargetsTargetOutput() GetMountTargetsTargetOutput

func (GetMountTargetsTargetOutput) ToGetMountTargetsTargetOutputWithContext

func (o GetMountTargetsTargetOutput) ToGetMountTargetsTargetOutputWithContext(ctx context.Context) GetMountTargetsTargetOutput

func (GetMountTargetsTargetOutput) Type

Field `type` has been deprecated from provider version 1.95.0. New field `networkType` replaces it.

func (GetMountTargetsTargetOutput) VpcId

Filter results by a specific VpcId.

func (GetMountTargetsTargetOutput) VswitchId

Filter results by a specific VSwitchId.

type GetProtocolsArgs

type GetProtocolsArgs struct {
	OutputFile *string `pulumi:"outputFile"`
	// The file system type. Valid Values: `Performance` and `Capacity`.
	Type string `pulumi:"type"`
	// String to filter results by zone id.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getProtocols.

type GetProtocolsResult

type GetProtocolsResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id         string  `pulumi:"id"`
	OutputFile *string `pulumi:"outputFile"`
	// A list of supported protocol type..
	Protocols []string `pulumi:"protocols"`
	Type      string   `pulumi:"type"`
	ZoneId    *string  `pulumi:"zoneId"`
}

A collection of values returned by getProtocols.

func GetProtocols

func GetProtocols(ctx *pulumi.Context, args *GetProtocolsArgs, opts ...pulumi.InvokeOption) (*GetProtocolsResult, error)

Provide a data source to retrieve the type of protocol used to create NAS file system.

> **NOTE:** Available in 1.42.0

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "protocols.txt"
		opt1 := "cn-beijing-e"
		_default, err := nas.GetProtocols(ctx, &nas.GetProtocolsArgs{
			OutputFile: &opt0,
			Type:       "Performance",
			ZoneId:     &opt1,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("nasProtocolsProtocol", _default.Protocols[0])
		return nil
	})
}

```

type GetServiceArgs added in v2.18.0

type GetServiceArgs struct {
	// Setting the value to `On` to enable the service. If has been enabled, return the result. Valid values: "On" or "Off". Default to "Off".
	Enable *string `pulumi:"enable"`
}

A collection of arguments for invoking getService.

type GetServiceResult added in v2.18.0

type GetServiceResult struct {
	Enable *string `pulumi:"enable"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The current service enable status.
	Status string `pulumi:"status"`
}

A collection of values returned by getService.

func GetService added in v2.18.0

func GetService(ctx *pulumi.Context, args *GetServiceArgs, opts ...pulumi.InvokeOption) (*GetServiceResult, error)

Using this data source can enable NAS service automatically. If the service has been enabled, it will return `Opened`.

For information about NAS and how to use it, see [What is NAS](https://www.alibabacloud.com/help/product/27516.htm).

> **NOTE:** Available in v1.97.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "On"
		_, err := nas.GetService(ctx, &nas.GetServiceArgs{
			Enable: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type MountTarget

type MountTarget struct {
	pulumi.CustomResourceState

	// The name of the permission group that applies to the mount target.
	AccessGroupName pulumi.StringPtrOutput `pulumi:"accessGroupName"`
	// The ID of the file system.
	FileSystemId pulumi.StringOutput `pulumi:"fileSystemId"`
	// The ID of security group.
	SecurityGroupId pulumi.StringPtrOutput `pulumi:"securityGroupId"`
	// Whether the MountTarget is active. The status of the mount target. Valid values: `Active` and `Inactive`, Default value is `Active`. Before you mount a file system, make sure that the mount target is in the Active state.
	Status pulumi.StringOutput `pulumi:"status"`
	// The ID of the VSwitch in the VPC where the mount target resides.
	VswitchId pulumi.StringPtrOutput `pulumi:"vswitchId"`
}

Provides a NAS Mount Target resource. For information about NAS Mount Target and how to use it, see [Manage NAS Mount Targets](https://www.alibabacloud.com/help/en/doc-detail/27531.htm).

> **NOTE**: Available in v1.34.0+.

> **NOTE**: Currently this resource support create a mount point in a classic network only when current region is China mainland regions.

> **NOTE**: You must grant NAS with specific RAM permissions when creating a classic mount targets, and it only can be achieved by creating a classic mount target mannually. See [Add a mount point](https://www.alibabacloud.com/help/doc-detail/60431.htm) and [Why do I need RAM permissions to create a mount point in a classic network](https://www.alibabacloud.com/help/faq-detail/42176.htm).

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleFileSystem, err := nas.NewFileSystem(ctx, "exampleFileSystem", &nas.FileSystemArgs{
			ProtocolType: pulumi.String("NFS"),
			StorageType:  pulumi.String("Performance"),
			Description:  pulumi.String("test file system"),
		})
		if err != nil {
			return err
		}
		exampleAccessGroup, err := nas.NewAccessGroup(ctx, "exampleAccessGroup", &nas.AccessGroupArgs{
			AccessGroupName: pulumi.String("test_name"),
			AccessGroupType: pulumi.String("Classic"),
			Description:     pulumi.String("test access group"),
		})
		if err != nil {
			return err
		}
		_, err = nas.NewMountTarget(ctx, "exampleMountTarget", &nas.MountTargetArgs{
			FileSystemId:    exampleFileSystem.ID(),
			AccessGroupName: exampleAccessGroup.AccessGroupName,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

NAS MountTarget

can be imported using the id, e.g.

```sh

$ pulumi import alicloud:nas/mountTarget:MountTarget foo 192094b415:192094b415-luw38.cn-beijing.nas.aliyuncs.com

```

func GetMountTarget

func GetMountTarget(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MountTargetState, opts ...pulumi.ResourceOption) (*MountTarget, error)

GetMountTarget gets an existing MountTarget 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 NewMountTarget

func NewMountTarget(ctx *pulumi.Context,
	name string, args *MountTargetArgs, opts ...pulumi.ResourceOption) (*MountTarget, error)

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

func (*MountTarget) ElementType added in v2.25.1

func (*MountTarget) ElementType() reflect.Type

func (*MountTarget) ToMountTargetOutput added in v2.25.1

func (i *MountTarget) ToMountTargetOutput() MountTargetOutput

func (*MountTarget) ToMountTargetOutputWithContext added in v2.25.1

func (i *MountTarget) ToMountTargetOutputWithContext(ctx context.Context) MountTargetOutput

func (*MountTarget) ToMountTargetPtrOutput added in v2.35.1

func (i *MountTarget) ToMountTargetPtrOutput() MountTargetPtrOutput

func (*MountTarget) ToMountTargetPtrOutputWithContext added in v2.35.1

func (i *MountTarget) ToMountTargetPtrOutputWithContext(ctx context.Context) MountTargetPtrOutput

type MountTargetArgs

type MountTargetArgs struct {
	// The name of the permission group that applies to the mount target.
	AccessGroupName pulumi.StringPtrInput
	// The ID of the file system.
	FileSystemId pulumi.StringInput
	// The ID of security group.
	SecurityGroupId pulumi.StringPtrInput
	// Whether the MountTarget is active. The status of the mount target. Valid values: `Active` and `Inactive`, Default value is `Active`. Before you mount a file system, make sure that the mount target is in the Active state.
	Status pulumi.StringPtrInput
	// The ID of the VSwitch in the VPC where the mount target resides.
	VswitchId pulumi.StringPtrInput
}

The set of arguments for constructing a MountTarget resource.

func (MountTargetArgs) ElementType

func (MountTargetArgs) ElementType() reflect.Type

type MountTargetArray added in v2.35.1

type MountTargetArray []MountTargetInput

func (MountTargetArray) ElementType added in v2.35.1

func (MountTargetArray) ElementType() reflect.Type

func (MountTargetArray) ToMountTargetArrayOutput added in v2.35.1

func (i MountTargetArray) ToMountTargetArrayOutput() MountTargetArrayOutput

func (MountTargetArray) ToMountTargetArrayOutputWithContext added in v2.35.1

func (i MountTargetArray) ToMountTargetArrayOutputWithContext(ctx context.Context) MountTargetArrayOutput

type MountTargetArrayInput added in v2.35.1

type MountTargetArrayInput interface {
	pulumi.Input

	ToMountTargetArrayOutput() MountTargetArrayOutput
	ToMountTargetArrayOutputWithContext(context.Context) MountTargetArrayOutput
}

MountTargetArrayInput is an input type that accepts MountTargetArray and MountTargetArrayOutput values. You can construct a concrete instance of `MountTargetArrayInput` via:

MountTargetArray{ MountTargetArgs{...} }

type MountTargetArrayOutput added in v2.35.1

type MountTargetArrayOutput struct{ *pulumi.OutputState }

func (MountTargetArrayOutput) ElementType added in v2.35.1

func (MountTargetArrayOutput) ElementType() reflect.Type

func (MountTargetArrayOutput) Index added in v2.35.1

func (MountTargetArrayOutput) ToMountTargetArrayOutput added in v2.35.1

func (o MountTargetArrayOutput) ToMountTargetArrayOutput() MountTargetArrayOutput

func (MountTargetArrayOutput) ToMountTargetArrayOutputWithContext added in v2.35.1

func (o MountTargetArrayOutput) ToMountTargetArrayOutputWithContext(ctx context.Context) MountTargetArrayOutput

type MountTargetInput added in v2.25.1

type MountTargetInput interface {
	pulumi.Input

	ToMountTargetOutput() MountTargetOutput
	ToMountTargetOutputWithContext(ctx context.Context) MountTargetOutput
}

type MountTargetMap added in v2.35.1

type MountTargetMap map[string]MountTargetInput

func (MountTargetMap) ElementType added in v2.35.1

func (MountTargetMap) ElementType() reflect.Type

func (MountTargetMap) ToMountTargetMapOutput added in v2.35.1

func (i MountTargetMap) ToMountTargetMapOutput() MountTargetMapOutput

func (MountTargetMap) ToMountTargetMapOutputWithContext added in v2.35.1

func (i MountTargetMap) ToMountTargetMapOutputWithContext(ctx context.Context) MountTargetMapOutput

type MountTargetMapInput added in v2.35.1

type MountTargetMapInput interface {
	pulumi.Input

	ToMountTargetMapOutput() MountTargetMapOutput
	ToMountTargetMapOutputWithContext(context.Context) MountTargetMapOutput
}

MountTargetMapInput is an input type that accepts MountTargetMap and MountTargetMapOutput values. You can construct a concrete instance of `MountTargetMapInput` via:

MountTargetMap{ "key": MountTargetArgs{...} }

type MountTargetMapOutput added in v2.35.1

type MountTargetMapOutput struct{ *pulumi.OutputState }

func (MountTargetMapOutput) ElementType added in v2.35.1

func (MountTargetMapOutput) ElementType() reflect.Type

func (MountTargetMapOutput) MapIndex added in v2.35.1

func (MountTargetMapOutput) ToMountTargetMapOutput added in v2.35.1

func (o MountTargetMapOutput) ToMountTargetMapOutput() MountTargetMapOutput

func (MountTargetMapOutput) ToMountTargetMapOutputWithContext added in v2.35.1

func (o MountTargetMapOutput) ToMountTargetMapOutputWithContext(ctx context.Context) MountTargetMapOutput

type MountTargetOutput added in v2.25.1

type MountTargetOutput struct {
	*pulumi.OutputState
}

func (MountTargetOutput) ElementType added in v2.25.1

func (MountTargetOutput) ElementType() reflect.Type

func (MountTargetOutput) ToMountTargetOutput added in v2.25.1

func (o MountTargetOutput) ToMountTargetOutput() MountTargetOutput

func (MountTargetOutput) ToMountTargetOutputWithContext added in v2.25.1

func (o MountTargetOutput) ToMountTargetOutputWithContext(ctx context.Context) MountTargetOutput

func (MountTargetOutput) ToMountTargetPtrOutput added in v2.35.1

func (o MountTargetOutput) ToMountTargetPtrOutput() MountTargetPtrOutput

func (MountTargetOutput) ToMountTargetPtrOutputWithContext added in v2.35.1

func (o MountTargetOutput) ToMountTargetPtrOutputWithContext(ctx context.Context) MountTargetPtrOutput

type MountTargetPtrInput added in v2.35.1

type MountTargetPtrInput interface {
	pulumi.Input

	ToMountTargetPtrOutput() MountTargetPtrOutput
	ToMountTargetPtrOutputWithContext(ctx context.Context) MountTargetPtrOutput
}

type MountTargetPtrOutput added in v2.35.1

type MountTargetPtrOutput struct {
	*pulumi.OutputState
}

func (MountTargetPtrOutput) ElementType added in v2.35.1

func (MountTargetPtrOutput) ElementType() reflect.Type

func (MountTargetPtrOutput) ToMountTargetPtrOutput added in v2.35.1

func (o MountTargetPtrOutput) ToMountTargetPtrOutput() MountTargetPtrOutput

func (MountTargetPtrOutput) ToMountTargetPtrOutputWithContext added in v2.35.1

func (o MountTargetPtrOutput) ToMountTargetPtrOutputWithContext(ctx context.Context) MountTargetPtrOutput

type MountTargetState

type MountTargetState struct {
	// The name of the permission group that applies to the mount target.
	AccessGroupName pulumi.StringPtrInput
	// The ID of the file system.
	FileSystemId pulumi.StringPtrInput
	// The ID of security group.
	SecurityGroupId pulumi.StringPtrInput
	// Whether the MountTarget is active. The status of the mount target. Valid values: `Active` and `Inactive`, Default value is `Active`. Before you mount a file system, make sure that the mount target is in the Active state.
	Status pulumi.StringPtrInput
	// The ID of the VSwitch in the VPC where the mount target resides.
	VswitchId pulumi.StringPtrInput
}

func (MountTargetState) ElementType

func (MountTargetState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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