nas

package
v3.10.0 Latest Latest
Warning

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

Go to latest
Published: Nov 24, 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/v3/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v3/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/v3/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v3/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

func (*AccessGroup) ElementType() reflect.Type

func (*AccessGroup) ToAccessGroupOutput

func (i *AccessGroup) ToAccessGroupOutput() AccessGroupOutput

func (*AccessGroup) ToAccessGroupOutputWithContext

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

func (*AccessGroup) ToAccessGroupPtrOutput

func (i *AccessGroup) ToAccessGroupPtrOutput() AccessGroupPtrOutput

func (*AccessGroup) ToAccessGroupPtrOutputWithContext

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

type AccessGroupArray []AccessGroupInput

func (AccessGroupArray) ElementType

func (AccessGroupArray) ElementType() reflect.Type

func (AccessGroupArray) ToAccessGroupArrayOutput

func (i AccessGroupArray) ToAccessGroupArrayOutput() AccessGroupArrayOutput

func (AccessGroupArray) ToAccessGroupArrayOutputWithContext

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

type AccessGroupArrayInput

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

type AccessGroupArrayOutput struct{ *pulumi.OutputState }

func (AccessGroupArrayOutput) ElementType

func (AccessGroupArrayOutput) ElementType() reflect.Type

func (AccessGroupArrayOutput) Index

func (AccessGroupArrayOutput) ToAccessGroupArrayOutput

func (o AccessGroupArrayOutput) ToAccessGroupArrayOutput() AccessGroupArrayOutput

func (AccessGroupArrayOutput) ToAccessGroupArrayOutputWithContext

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

type AccessGroupInput

type AccessGroupInput interface {
	pulumi.Input

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

type AccessGroupMap

type AccessGroupMap map[string]AccessGroupInput

func (AccessGroupMap) ElementType

func (AccessGroupMap) ElementType() reflect.Type

func (AccessGroupMap) ToAccessGroupMapOutput

func (i AccessGroupMap) ToAccessGroupMapOutput() AccessGroupMapOutput

func (AccessGroupMap) ToAccessGroupMapOutputWithContext

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

type AccessGroupMapInput

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

type AccessGroupMapOutput struct{ *pulumi.OutputState }

func (AccessGroupMapOutput) ElementType

func (AccessGroupMapOutput) ElementType() reflect.Type

func (AccessGroupMapOutput) MapIndex

func (AccessGroupMapOutput) ToAccessGroupMapOutput

func (o AccessGroupMapOutput) ToAccessGroupMapOutput() AccessGroupMapOutput

func (AccessGroupMapOutput) ToAccessGroupMapOutputWithContext

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

type AccessGroupOutput

type AccessGroupOutput struct{ *pulumi.OutputState }

func (AccessGroupOutput) ElementType

func (AccessGroupOutput) ElementType() reflect.Type

func (AccessGroupOutput) ToAccessGroupOutput

func (o AccessGroupOutput) ToAccessGroupOutput() AccessGroupOutput

func (AccessGroupOutput) ToAccessGroupOutputWithContext

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

func (AccessGroupOutput) ToAccessGroupPtrOutput

func (o AccessGroupOutput) ToAccessGroupPtrOutput() AccessGroupPtrOutput

func (AccessGroupOutput) ToAccessGroupPtrOutputWithContext

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

type AccessGroupPtrInput

type AccessGroupPtrInput interface {
	pulumi.Input

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

type AccessGroupPtrOutput

type AccessGroupPtrOutput struct{ *pulumi.OutputState }

func (AccessGroupPtrOutput) Elem added in v3.9.0

func (AccessGroupPtrOutput) ElementType

func (AccessGroupPtrOutput) ElementType() reflect.Type

func (AccessGroupPtrOutput) ToAccessGroupPtrOutput

func (o AccessGroupPtrOutput) ToAccessGroupPtrOutput() AccessGroupPtrOutput

func (AccessGroupPtrOutput) ToAccessGroupPtrOutputWithContext

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/v3/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v3/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

func (*AccessRule) ElementType() reflect.Type

func (*AccessRule) ToAccessRuleOutput

func (i *AccessRule) ToAccessRuleOutput() AccessRuleOutput

func (*AccessRule) ToAccessRuleOutputWithContext

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

func (*AccessRule) ToAccessRulePtrOutput

func (i *AccessRule) ToAccessRulePtrOutput() AccessRulePtrOutput

func (*AccessRule) ToAccessRulePtrOutputWithContext

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

type AccessRuleArray []AccessRuleInput

func (AccessRuleArray) ElementType

func (AccessRuleArray) ElementType() reflect.Type

func (AccessRuleArray) ToAccessRuleArrayOutput

func (i AccessRuleArray) ToAccessRuleArrayOutput() AccessRuleArrayOutput

func (AccessRuleArray) ToAccessRuleArrayOutputWithContext

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

type AccessRuleArrayInput

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

type AccessRuleArrayOutput struct{ *pulumi.OutputState }

func (AccessRuleArrayOutput) ElementType

func (AccessRuleArrayOutput) ElementType() reflect.Type

func (AccessRuleArrayOutput) Index

func (AccessRuleArrayOutput) ToAccessRuleArrayOutput

func (o AccessRuleArrayOutput) ToAccessRuleArrayOutput() AccessRuleArrayOutput

func (AccessRuleArrayOutput) ToAccessRuleArrayOutputWithContext

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

type AccessRuleInput

type AccessRuleInput interface {
	pulumi.Input

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

type AccessRuleMap

type AccessRuleMap map[string]AccessRuleInput

func (AccessRuleMap) ElementType

func (AccessRuleMap) ElementType() reflect.Type

func (AccessRuleMap) ToAccessRuleMapOutput

func (i AccessRuleMap) ToAccessRuleMapOutput() AccessRuleMapOutput

func (AccessRuleMap) ToAccessRuleMapOutputWithContext

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

type AccessRuleMapInput

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

type AccessRuleMapOutput struct{ *pulumi.OutputState }

func (AccessRuleMapOutput) ElementType

func (AccessRuleMapOutput) ElementType() reflect.Type

func (AccessRuleMapOutput) MapIndex

func (AccessRuleMapOutput) ToAccessRuleMapOutput

func (o AccessRuleMapOutput) ToAccessRuleMapOutput() AccessRuleMapOutput

func (AccessRuleMapOutput) ToAccessRuleMapOutputWithContext

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

type AccessRuleOutput

type AccessRuleOutput struct{ *pulumi.OutputState }

func (AccessRuleOutput) ElementType

func (AccessRuleOutput) ElementType() reflect.Type

func (AccessRuleOutput) ToAccessRuleOutput

func (o AccessRuleOutput) ToAccessRuleOutput() AccessRuleOutput

func (AccessRuleOutput) ToAccessRuleOutputWithContext

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

func (AccessRuleOutput) ToAccessRulePtrOutput

func (o AccessRuleOutput) ToAccessRulePtrOutput() AccessRulePtrOutput

func (AccessRuleOutput) ToAccessRulePtrOutputWithContext

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

type AccessRulePtrInput

type AccessRulePtrInput interface {
	pulumi.Input

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

type AccessRulePtrOutput

type AccessRulePtrOutput struct{ *pulumi.OutputState }

func (AccessRulePtrOutput) Elem added in v3.9.0

func (AccessRulePtrOutput) ElementType

func (AccessRulePtrOutput) ElementType() reflect.Type

func (AccessRulePtrOutput) ToAccessRulePtrOutput

func (o AccessRulePtrOutput) ToAccessRulePtrOutput() AccessRulePtrOutput

func (AccessRulePtrOutput) ToAccessRulePtrOutputWithContext

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 capacity of the file system. The `capacity` is required when the `fileSystemType` is `extreme`.
	// Unit: gib; **Note**: The minimum value is 100.
	Capacity pulumi.IntOutput `pulumi:"capacity"`
	// The File System description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Whether the file system is encrypted. Using kms service escrow key to encrypt and store the file system data. When reading and writing encrypted data, there is no need to decrypt.
	// * Valid values:
	EncryptType pulumi.IntPtrOutput `pulumi:"encryptType"`
	// the type of the file system.
	// Valid values:
	// `standard` (Default),
	// `extreme`.
	FileSystemType pulumi.StringPtrOutput `pulumi:"fileSystemType"`
	// The id of the KMS key. The `kmsKeyId` is required when the `encryptType` is `2`.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// The protocol type of the file system.
	// Valid values:
	// `NFS`,
	// `SMB` (Available when the `fileSystemType` is `standard`).
	ProtocolType pulumi.StringOutput `pulumi:"protocolType"`
	// The storage type of the file System.
	// * Valid values:
	StorageType pulumi.StringOutput `pulumi:"storageType"`
	// The available zones information that supports nas.When FileSystemType=standard, this parameter is not required. **Note:** By default, a qualified availability zone is randomly selected according to the `protocolType` and `storageType` configuration.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

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/v3/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := nas.NewFileSystem(ctx, "foo", &nas.FileSystemArgs{
			Capacity:       pulumi.Int(100),
			Description:    pulumi.String("tf-testAccNasConfig"),
			FileSystemType: pulumi.String("extreme"),
			ProtocolType:   pulumi.String("NFS"),
			StorageType:    pulumi.String("standard"),
			ZoneId:         pulumi.String("cn-hangzhou-f"),
		})
		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

func (*FileSystem) ElementType() reflect.Type

func (*FileSystem) ToFileSystemOutput

func (i *FileSystem) ToFileSystemOutput() FileSystemOutput

func (*FileSystem) ToFileSystemOutputWithContext

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

func (*FileSystem) ToFileSystemPtrOutput

func (i *FileSystem) ToFileSystemPtrOutput() FileSystemPtrOutput

func (*FileSystem) ToFileSystemPtrOutputWithContext

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

type FileSystemArgs

type FileSystemArgs struct {
	// The capacity of the file system. The `capacity` is required when the `fileSystemType` is `extreme`.
	// Unit: gib; **Note**: The minimum value is 100.
	Capacity pulumi.IntPtrInput
	// The File System description.
	Description pulumi.StringPtrInput
	// Whether the file system is encrypted. Using kms service escrow key to encrypt and store the file system data. When reading and writing encrypted data, there is no need to decrypt.
	// * Valid values:
	EncryptType pulumi.IntPtrInput
	// the type of the file system.
	// Valid values:
	// `standard` (Default),
	// `extreme`.
	FileSystemType pulumi.StringPtrInput
	// The id of the KMS key. The `kmsKeyId` is required when the `encryptType` is `2`.
	KmsKeyId pulumi.StringPtrInput
	// The protocol type of the file system.
	// Valid values:
	// `NFS`,
	// `SMB` (Available when the `fileSystemType` is `standard`).
	ProtocolType pulumi.StringInput
	// The storage type of the file System.
	// * Valid values:
	StorageType pulumi.StringInput
	// The available zones information that supports nas.When FileSystemType=standard, this parameter is not required. **Note:** By default, a qualified availability zone is randomly selected according to the `protocolType` and `storageType` configuration.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a FileSystem resource.

func (FileSystemArgs) ElementType

func (FileSystemArgs) ElementType() reflect.Type

type FileSystemArray

type FileSystemArray []FileSystemInput

func (FileSystemArray) ElementType

func (FileSystemArray) ElementType() reflect.Type

func (FileSystemArray) ToFileSystemArrayOutput

func (i FileSystemArray) ToFileSystemArrayOutput() FileSystemArrayOutput

func (FileSystemArray) ToFileSystemArrayOutputWithContext

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

type FileSystemArrayInput

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

type FileSystemArrayOutput struct{ *pulumi.OutputState }

func (FileSystemArrayOutput) ElementType

func (FileSystemArrayOutput) ElementType() reflect.Type

func (FileSystemArrayOutput) Index

func (FileSystemArrayOutput) ToFileSystemArrayOutput

func (o FileSystemArrayOutput) ToFileSystemArrayOutput() FileSystemArrayOutput

func (FileSystemArrayOutput) ToFileSystemArrayOutputWithContext

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

type FileSystemInput

type FileSystemInput interface {
	pulumi.Input

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

type FileSystemMap

type FileSystemMap map[string]FileSystemInput

func (FileSystemMap) ElementType

func (FileSystemMap) ElementType() reflect.Type

func (FileSystemMap) ToFileSystemMapOutput

func (i FileSystemMap) ToFileSystemMapOutput() FileSystemMapOutput

func (FileSystemMap) ToFileSystemMapOutputWithContext

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

type FileSystemMapInput

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

type FileSystemMapOutput struct{ *pulumi.OutputState }

func (FileSystemMapOutput) ElementType

func (FileSystemMapOutput) ElementType() reflect.Type

func (FileSystemMapOutput) MapIndex

func (FileSystemMapOutput) ToFileSystemMapOutput

func (o FileSystemMapOutput) ToFileSystemMapOutput() FileSystemMapOutput

func (FileSystemMapOutput) ToFileSystemMapOutputWithContext

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

type FileSystemOutput

type FileSystemOutput struct{ *pulumi.OutputState }

func (FileSystemOutput) ElementType

func (FileSystemOutput) ElementType() reflect.Type

func (FileSystemOutput) ToFileSystemOutput

func (o FileSystemOutput) ToFileSystemOutput() FileSystemOutput

func (FileSystemOutput) ToFileSystemOutputWithContext

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

func (FileSystemOutput) ToFileSystemPtrOutput

func (o FileSystemOutput) ToFileSystemPtrOutput() FileSystemPtrOutput

func (FileSystemOutput) ToFileSystemPtrOutputWithContext

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

type FileSystemPtrInput

type FileSystemPtrInput interface {
	pulumi.Input

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

type FileSystemPtrOutput

type FileSystemPtrOutput struct{ *pulumi.OutputState }

func (FileSystemPtrOutput) Elem added in v3.9.0

func (FileSystemPtrOutput) ElementType

func (FileSystemPtrOutput) ElementType() reflect.Type

func (FileSystemPtrOutput) ToFileSystemPtrOutput

func (o FileSystemPtrOutput) ToFileSystemPtrOutput() FileSystemPtrOutput

func (FileSystemPtrOutput) ToFileSystemPtrOutputWithContext

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

type FileSystemState

type FileSystemState struct {
	// The capacity of the file system. The `capacity` is required when the `fileSystemType` is `extreme`.
	// Unit: gib; **Note**: The minimum value is 100.
	Capacity pulumi.IntPtrInput
	// The File System description.
	Description pulumi.StringPtrInput
	// Whether the file system is encrypted. Using kms service escrow key to encrypt and store the file system data. When reading and writing encrypted data, there is no need to decrypt.
	// * Valid values:
	EncryptType pulumi.IntPtrInput
	// the type of the file system.
	// Valid values:
	// `standard` (Default),
	// `extreme`.
	FileSystemType pulumi.StringPtrInput
	// The id of the KMS key. The `kmsKeyId` is required when the `encryptType` is `2`.
	KmsKeyId pulumi.StringPtrInput
	// The protocol type of the file system.
	// Valid values:
	// `NFS`,
	// `SMB` (Available when the `fileSystemType` is `standard`).
	ProtocolType pulumi.StringPtrInput
	// The storage type of the file System.
	// * Valid values:
	StorageType pulumi.StringPtrInput
	// The available zones information that supports nas.When FileSystemType=standard, this parameter is not required. **Note:** By default, a qualified availability zone is randomly selected according to the `protocolType` and `storageType` configuration.
	ZoneId 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

func (o GetAccessGroupsGroupOutput) AccessGroupName() pulumi.StringOutput

The name of access group.

func (GetAccessGroupsGroupOutput) AccessGroupType

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 GetAccessGroupsOutputArgs added in v3.9.0

type GetAccessGroupsOutputArgs struct {
	// The name of access group.
	AccessGroupName pulumi.StringPtrInput `pulumi:"accessGroupName"`
	// Filter results by a specific AccessGroupType.
	AccessGroupType pulumi.StringPtrInput `pulumi:"accessGroupType"`
	// Filter results by a specific Description.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The type of file system. Valid values: `standard` and `extreme`. Default to `standard`.
	FileSystemType pulumi.StringPtrInput `pulumi:"fileSystemType"`
	// A regex string to filter AccessGroups by name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `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 pulumi.StringPtrInput `pulumi:"type"`
	// Specifies whether the time to return is in UTC. Valid values: true and false.
	UseutcDateTime pulumi.BoolPtrInput `pulumi:"useutcDateTime"`
}

A collection of arguments for invoking getAccessGroups.

func (GetAccessGroupsOutputArgs) ElementType added in v3.9.0

func (GetAccessGroupsOutputArgs) ElementType() reflect.Type

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/v3/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v3/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 GetAccessGroupsResultOutput added in v3.9.0

type GetAccessGroupsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAccessGroups.

func GetAccessGroupsOutput added in v3.9.0

func (GetAccessGroupsResultOutput) AccessGroupName added in v3.9.0

(Available in 1.95.0+) The name of the AccessGroup.

func (GetAccessGroupsResultOutput) AccessGroupType added in v3.9.0

(Available in 1.95.0+) The type of the AccessGroup.

func (GetAccessGroupsResultOutput) Description added in v3.9.0

Description of the AccessGroup.

func (GetAccessGroupsResultOutput) ElementType added in v3.9.0

func (GetAccessGroupsResultOutput) FileSystemType added in v3.9.0

func (GetAccessGroupsResultOutput) Groups added in v3.9.0

A list of AccessGroups. Each element contains the following attributes:

func (GetAccessGroupsResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetAccessGroupsResultOutput) Ids added in v3.9.0

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>`.

func (GetAccessGroupsResultOutput) NameRegex added in v3.9.0

func (GetAccessGroupsResultOutput) Names added in v3.9.0

A list of AccessGroup names.

func (GetAccessGroupsResultOutput) OutputFile added in v3.9.0

func (GetAccessGroupsResultOutput) ToGetAccessGroupsResultOutput added in v3.9.0

func (o GetAccessGroupsResultOutput) ToGetAccessGroupsResultOutput() GetAccessGroupsResultOutput

func (GetAccessGroupsResultOutput) ToGetAccessGroupsResultOutputWithContext added in v3.9.0

func (o GetAccessGroupsResultOutput) ToGetAccessGroupsResultOutputWithContext(ctx context.Context) GetAccessGroupsResultOutput

func (GetAccessGroupsResultOutput) Type deprecated added in v3.9.0

(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.

func (GetAccessGroupsResultOutput) UseutcDateTime added in v3.9.0

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 GetAccessRulesOutputArgs added in v3.9.0

type GetAccessRulesOutputArgs struct {
	// Filter results by a specific AccessGroupName.
	AccessGroupName pulumi.StringInput `pulumi:"accessGroupName"`
	// A list of rule IDs.
	Ids        pulumi.StringArrayInput `pulumi:"ids"`
	OutputFile pulumi.StringPtrInput   `pulumi:"outputFile"`
	// Filter results by a specific RWAccess.
	RwAccess pulumi.StringPtrInput `pulumi:"rwAccess"`
	// Filter results by a specific SourceCidrIp.
	SourceCidrIp pulumi.StringPtrInput `pulumi:"sourceCidrIp"`
	// Filter results by a specific UserAccess.
	UserAccess pulumi.StringPtrInput `pulumi:"userAccess"`
}

A collection of arguments for invoking getAccessRules.

func (GetAccessRulesOutputArgs) ElementType added in v3.9.0

func (GetAccessRulesOutputArgs) ElementType() reflect.Type

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 GetAccessRulesResultOutput added in v3.9.0

type GetAccessRulesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAccessRules.

func GetAccessRulesOutput added in v3.9.0

func GetAccessRulesOutput(ctx *pulumi.Context, args GetAccessRulesOutputArgs, opts ...pulumi.InvokeOption) GetAccessRulesResultOutput

func (GetAccessRulesResultOutput) AccessGroupName added in v3.9.0

func (o GetAccessRulesResultOutput) AccessGroupName() pulumi.StringOutput

func (GetAccessRulesResultOutput) ElementType added in v3.9.0

func (GetAccessRulesResultOutput) ElementType() reflect.Type

func (GetAccessRulesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetAccessRulesResultOutput) Ids added in v3.9.0

A list of rule IDs, Each element set to `accessRuleId` (Each element formats as `<access_group_name>:<access_rule_id>` before 1.53.0).

func (GetAccessRulesResultOutput) OutputFile added in v3.9.0

func (GetAccessRulesResultOutput) Rules added in v3.9.0

A list of AccessRules. Each element contains the following attributes:

func (GetAccessRulesResultOutput) RwAccess added in v3.9.0

RWAccess of the AccessRule.

func (GetAccessRulesResultOutput) SourceCidrIp added in v3.9.0

SourceCidrIp of the AccessRule.

func (GetAccessRulesResultOutput) ToGetAccessRulesResultOutput added in v3.9.0

func (o GetAccessRulesResultOutput) ToGetAccessRulesResultOutput() GetAccessRulesResultOutput

func (GetAccessRulesResultOutput) ToGetAccessRulesResultOutputWithContext added in v3.9.0

func (o GetAccessRulesResultOutput) ToGetAccessRulesResultOutputWithContext(ctx context.Context) GetAccessRulesResultOutput

func (GetAccessRulesResultOutput) UserAccess added in v3.9.0

UserAccess of the AccessRule

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"`
	// The protocol type of the file system.
	// Valid values:
	// `NFS`,
	// `SMB` (Available when the `fileSystemType` is `standard`).
	ProtocolType *string `pulumi:"protocolType"`
	// The storage type of the file system.
	// * Valid values:
	StorageType *string `pulumi:"storageType"`
}

A collection of arguments for invoking getFileSystems.

type GetFileSystemsOutputArgs added in v3.9.0

type GetFileSystemsOutputArgs struct {
	// A regex string to filter the results by the :FileSystem description.
	DescriptionRegex pulumi.StringPtrInput `pulumi:"descriptionRegex"`
	// A list of FileSystemId.
	Ids        pulumi.StringArrayInput `pulumi:"ids"`
	OutputFile pulumi.StringPtrInput   `pulumi:"outputFile"`
	// The protocol type of the file system.
	// Valid values:
	// `NFS`,
	// `SMB` (Available when the `fileSystemType` is `standard`).
	ProtocolType pulumi.StringPtrInput `pulumi:"protocolType"`
	// The storage type of the file system.
	// * Valid values:
	StorageType pulumi.StringPtrInput `pulumi:"storageType"`
}

A collection of arguments for invoking getFileSystems.

func (GetFileSystemsOutputArgs) ElementType added in v3.9.0

func (GetFileSystemsOutputArgs) ElementType() reflect.Type

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/v3/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

type GetFileSystemsResultOutput added in v3.9.0

type GetFileSystemsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getFileSystems.

func GetFileSystemsOutput added in v3.9.0

func GetFileSystemsOutput(ctx *pulumi.Context, args GetFileSystemsOutputArgs, opts ...pulumi.InvokeOption) GetFileSystemsResultOutput

func (GetFileSystemsResultOutput) DescriptionRegex added in v3.9.0

func (o GetFileSystemsResultOutput) DescriptionRegex() pulumi.StringPtrOutput

func (GetFileSystemsResultOutput) Descriptions added in v3.9.0

A list of FileSystem descriptions.

func (GetFileSystemsResultOutput) ElementType added in v3.9.0

func (GetFileSystemsResultOutput) ElementType() reflect.Type

func (GetFileSystemsResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetFileSystemsResultOutput) Ids added in v3.9.0

A list of FileSystem Id.

func (GetFileSystemsResultOutput) OutputFile added in v3.9.0

func (GetFileSystemsResultOutput) ProtocolType added in v3.9.0

ProtocolType block of the FileSystem

func (GetFileSystemsResultOutput) StorageType added in v3.9.0

StorageType block of the FileSystem.

func (GetFileSystemsResultOutput) Systems added in v3.9.0

A list of VPCs. Each element contains the following attributes:

func (GetFileSystemsResultOutput) ToGetFileSystemsResultOutput added in v3.9.0

func (o GetFileSystemsResultOutput) ToGetFileSystemsResultOutput() GetFileSystemsResultOutput

func (GetFileSystemsResultOutput) ToGetFileSystemsResultOutputWithContext added in v3.9.0

func (o GetFileSystemsResultOutput) ToGetFileSystemsResultOutputWithContext(ctx context.Context) GetFileSystemsResultOutput

type GetFileSystemsSystem

type GetFileSystemsSystem struct {
	// (Optional, Available in v1.140.0+) The capacity of the file system.
	Capacity int `pulumi:"capacity"`
	// Time of creation.
	CreateTime string `pulumi:"createTime"`
	// Description of the FileSystem.
	Description string `pulumi:"description"`
	// (Optional, Available in v1.121.2+) Whether the file system is encrypted.
	// * Valid values:
	// * `0`: The file system is not encrypted.
	// * `1`: The file system is encrypted with a managed secret key.
	// * `2`: User management key.
	EncryptType int `pulumi:"encryptType"`
	// The type of the file system.
	// Valid values:
	// `standard` (Default),
	// `extreme`.
	FileSystemType string `pulumi:"fileSystemType"`
	// ID of the FileSystem.
	Id string `pulumi:"id"`
	// (Optional, Available in v1.140.0+) The id of the KMS key.
	KmsKeyId string `pulumi:"kmsKeyId"`
	// MeteredSize of the FileSystem.
	MeteredSize int `pulumi:"meteredSize"`
	// The protocol type of the file system.
	// Valid values:
	// `NFS`,
	// `SMB` (Available when the `fileSystemType` is `standard`).
	ProtocolType string `pulumi:"protocolType"`
	// ID of the region where the FileSystem is located.
	RegionId string `pulumi:"regionId"`
	// The storage type of the file system.
	// * Valid values:
	StorageType string `pulumi:"storageType"`
	// (Optional, Available in v1.140.0+) The id of the zone. Each region consists of multiple isolated locations known as zones. Each zone has an independent power supply and network.
	ZoneId string `pulumi:"zoneId"`
}

type GetFileSystemsSystemArgs

type GetFileSystemsSystemArgs struct {
	// (Optional, Available in v1.140.0+) The capacity of the file system.
	Capacity pulumi.IntInput `pulumi:"capacity"`
	// Time of creation.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// Description of the FileSystem.
	Description pulumi.StringInput `pulumi:"description"`
	// (Optional, Available in v1.121.2+) Whether the file system is encrypted.
	// * Valid values:
	// * `0`: The file system is not encrypted.
	// * `1`: The file system is encrypted with a managed secret key.
	// * `2`: User management key.
	EncryptType pulumi.IntInput `pulumi:"encryptType"`
	// The type of the file system.
	// Valid values:
	// `standard` (Default),
	// `extreme`.
	FileSystemType pulumi.StringInput `pulumi:"fileSystemType"`
	// ID of the FileSystem.
	Id pulumi.StringInput `pulumi:"id"`
	// (Optional, Available in v1.140.0+) The id of the KMS key.
	KmsKeyId pulumi.StringInput `pulumi:"kmsKeyId"`
	// MeteredSize of the FileSystem.
	MeteredSize pulumi.IntInput `pulumi:"meteredSize"`
	// The protocol type of the file system.
	// Valid values:
	// `NFS`,
	// `SMB` (Available when the `fileSystemType` is `standard`).
	ProtocolType pulumi.StringInput `pulumi:"protocolType"`
	// ID of the region where the FileSystem is located.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// The storage type of the file system.
	// * Valid values:
	StorageType pulumi.StringInput `pulumi:"storageType"`
	// (Optional, Available in v1.140.0+) The id of the zone. Each region consists of multiple isolated locations known as zones. Each zone has an independent power supply and network.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

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) Capacity added in v3.9.0

(Optional, Available in v1.140.0+) The capacity of the file system.

func (GetFileSystemsSystemOutput) CreateTime

Time of creation.

func (GetFileSystemsSystemOutput) Description

Description of the FileSystem.

func (GetFileSystemsSystemOutput) ElementType

func (GetFileSystemsSystemOutput) ElementType() reflect.Type

func (GetFileSystemsSystemOutput) EncryptType

(Optional, Available in v1.121.2+) Whether the file system is encrypted. * Valid values: * `0`: The file system is not encrypted. * `1`: The file system is encrypted with a managed secret key. * `2`: User management key.

func (GetFileSystemsSystemOutput) FileSystemType added in v3.9.0

func (o GetFileSystemsSystemOutput) FileSystemType() pulumi.StringOutput

The type of the file system. Valid values: `standard` (Default), `extreme`.

func (GetFileSystemsSystemOutput) Id

ID of the FileSystem.

func (GetFileSystemsSystemOutput) KmsKeyId added in v3.9.0

(Optional, Available in v1.140.0+) The id of the KMS key.

func (GetFileSystemsSystemOutput) MeteredSize

MeteredSize of the FileSystem.

func (GetFileSystemsSystemOutput) ProtocolType

The protocol type of the file system. Valid values: `NFS`, `SMB` (Available when the `fileSystemType` is `standard`).

func (GetFileSystemsSystemOutput) RegionId

ID of the region where the FileSystem is located.

func (GetFileSystemsSystemOutput) StorageType

The storage type of the file system. * Valid values:

func (GetFileSystemsSystemOutput) ToGetFileSystemsSystemOutput

func (o GetFileSystemsSystemOutput) ToGetFileSystemsSystemOutput() GetFileSystemsSystemOutput

func (GetFileSystemsSystemOutput) ToGetFileSystemsSystemOutputWithContext

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

func (GetFileSystemsSystemOutput) ZoneId added in v3.9.0

(Optional, Available in v1.140.0+) The id of the zone. Each region consists of multiple isolated locations known as zones. Each zone has an independent power supply and network.

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 GetMountTargetsOutputArgs added in v3.9.0

type GetMountTargetsOutputArgs struct {
	// Filter results by a specific AccessGroupName.
	AccessGroupName pulumi.StringPtrInput `pulumi:"accessGroupName"`
	// The ID of the FileSystem that owns the MountTarget.
	FileSystemId pulumi.StringInput `pulumi:"fileSystemId"`
	// A list of MountTargetDomain.
	Ids pulumi.StringArrayInput `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 pulumi.StringPtrInput `pulumi:"mountTargetDomain"`
	// Filter results by a specific NetworkType.
	NetworkType pulumi.StringPtrInput `pulumi:"networkType"`
	OutputFile  pulumi.StringPtrInput `pulumi:"outputFile"`
	// Filter results by the status of mount target. Valid values: `Active`, `Inactive` and `Pending`.
	Status pulumi.StringPtrInput `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 pulumi.StringPtrInput `pulumi:"type"`
	// Filter results by a specific VpcId.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// Filter results by a specific VSwitchId.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

A collection of arguments for invoking getMountTargets.

func (GetMountTargetsOutputArgs) ElementType added in v3.9.0

func (GetMountTargetsOutputArgs) ElementType() reflect.Type

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/v3/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v3/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 GetMountTargetsResultOutput added in v3.9.0

type GetMountTargetsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getMountTargets.

func GetMountTargetsOutput added in v3.9.0

func (GetMountTargetsResultOutput) AccessGroupName added in v3.9.0

AccessGroup of The MountTarget.

func (GetMountTargetsResultOutput) ElementType added in v3.9.0

func (GetMountTargetsResultOutput) FileSystemId added in v3.9.0

func (GetMountTargetsResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetMountTargetsResultOutput) Ids added in v3.9.0

A list of MountTargetDomain.

func (GetMountTargetsResultOutput) MountTargetDomain deprecated added in v3.9.0

func (o GetMountTargetsResultOutput) MountTargetDomain() pulumi.StringPtrOutput

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.

func (GetMountTargetsResultOutput) NetworkType added in v3.9.0

func (GetMountTargetsResultOutput) OutputFile added in v3.9.0

func (GetMountTargetsResultOutput) Status added in v3.9.0

func (GetMountTargetsResultOutput) Targets added in v3.9.0

A list of MountTargetDomains. Each element contains the following attributes:

func (GetMountTargetsResultOutput) ToGetMountTargetsResultOutput added in v3.9.0

func (o GetMountTargetsResultOutput) ToGetMountTargetsResultOutput() GetMountTargetsResultOutput

func (GetMountTargetsResultOutput) ToGetMountTargetsResultOutputWithContext added in v3.9.0

func (o GetMountTargetsResultOutput) ToGetMountTargetsResultOutputWithContext(ctx context.Context) GetMountTargetsResultOutput

func (GetMountTargetsResultOutput) Type deprecated added in v3.9.0

Deprecated: Field 'type' has been deprecated from provider version 1.95.0. New field 'network_type' replaces it.

func (GetMountTargetsResultOutput) VpcId added in v3.9.0

VpcId of The MountTarget.

func (GetMountTargetsResultOutput) VswitchId added in v3.9.0

VSwitchId of The MountTarget.

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

Filter results by a specific NetworkType.

func (GetMountTargetsTargetOutput) Status

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 GetProtocolsOutputArgs added in v3.9.0

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

A collection of arguments for invoking getProtocols.

func (GetProtocolsOutputArgs) ElementType added in v3.9.0

func (GetProtocolsOutputArgs) ElementType() reflect.Type

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/v3/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v3/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 GetProtocolsResultOutput added in v3.9.0

type GetProtocolsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getProtocols.

func GetProtocolsOutput added in v3.9.0

func GetProtocolsOutput(ctx *pulumi.Context, args GetProtocolsOutputArgs, opts ...pulumi.InvokeOption) GetProtocolsResultOutput

func (GetProtocolsResultOutput) ElementType added in v3.9.0

func (GetProtocolsResultOutput) ElementType() reflect.Type

func (GetProtocolsResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetProtocolsResultOutput) OutputFile added in v3.9.0

func (GetProtocolsResultOutput) Protocols added in v3.9.0

A list of supported protocol type..

func (GetProtocolsResultOutput) ToGetProtocolsResultOutput added in v3.9.0

func (o GetProtocolsResultOutput) ToGetProtocolsResultOutput() GetProtocolsResultOutput

func (GetProtocolsResultOutput) ToGetProtocolsResultOutputWithContext added in v3.9.0

func (o GetProtocolsResultOutput) ToGetProtocolsResultOutputWithContext(ctx context.Context) GetProtocolsResultOutput

func (GetProtocolsResultOutput) Type added in v3.9.0

func (GetProtocolsResultOutput) ZoneId added in v3.9.0

type GetServiceArgs

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 GetServiceOutputArgs added in v3.9.0

type GetServiceOutputArgs 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 pulumi.StringPtrInput `pulumi:"enable"`
}

A collection of arguments for invoking getService.

func (GetServiceOutputArgs) ElementType added in v3.9.0

func (GetServiceOutputArgs) ElementType() reflect.Type

type GetServiceResult

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

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/v3/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v3/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 GetServiceResultOutput added in v3.9.0

type GetServiceResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getService.

func GetServiceOutput added in v3.9.0

func GetServiceOutput(ctx *pulumi.Context, args GetServiceOutputArgs, opts ...pulumi.InvokeOption) GetServiceResultOutput

func (GetServiceResultOutput) ElementType added in v3.9.0

func (GetServiceResultOutput) ElementType() reflect.Type

func (GetServiceResultOutput) Enable added in v3.9.0

func (GetServiceResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetServiceResultOutput) Status added in v3.9.0

The current service enable status.

func (GetServiceResultOutput) ToGetServiceResultOutput added in v3.9.0

func (o GetServiceResultOutput) ToGetServiceResultOutput() GetServiceResultOutput

func (GetServiceResultOutput) ToGetServiceResultOutputWithContext added in v3.9.0

func (o GetServiceResultOutput) ToGetServiceResultOutputWithContext(ctx context.Context) GetServiceResultOutput

type GetZonesArgs added in v3.9.0

type GetZonesArgs struct {
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getZones.

type GetZonesOutputArgs added in v3.9.0

type GetZonesOutputArgs struct {
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getZones.

func (GetZonesOutputArgs) ElementType added in v3.9.0

func (GetZonesOutputArgs) ElementType() reflect.Type

type GetZonesResult added in v3.9.0

type GetZonesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id         string  `pulumi:"id"`
	OutputFile *string `pulumi:"outputFile"`
	// A list of availability zone information collection.
	Zones []GetZonesZone `pulumi:"zones"`
}

A collection of values returned by getZones.

func GetZones added in v3.9.0

func GetZones(ctx *pulumi.Context, args *GetZonesArgs, opts ...pulumi.InvokeOption) (*GetZonesResult, error)

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

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

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := nas.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("alicloudNasZonesId", _default.Zones[0].ZoneId)
		return nil
	})
}

```

type GetZonesResultOutput added in v3.9.0

type GetZonesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getZones.

func GetZonesOutput added in v3.9.0

func GetZonesOutput(ctx *pulumi.Context, args GetZonesOutputArgs, opts ...pulumi.InvokeOption) GetZonesResultOutput

func (GetZonesResultOutput) ElementType added in v3.9.0

func (GetZonesResultOutput) ElementType() reflect.Type

func (GetZonesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetZonesResultOutput) OutputFile added in v3.9.0

func (GetZonesResultOutput) ToGetZonesResultOutput added in v3.9.0

func (o GetZonesResultOutput) ToGetZonesResultOutput() GetZonesResultOutput

func (GetZonesResultOutput) ToGetZonesResultOutputWithContext added in v3.9.0

func (o GetZonesResultOutput) ToGetZonesResultOutputWithContext(ctx context.Context) GetZonesResultOutput

func (GetZonesResultOutput) Zones added in v3.9.0

A list of availability zone information collection.

type GetZonesZone added in v3.9.0

type GetZonesZone struct {
	// A list of instance type information collection
	InstanceTypes []GetZonesZoneInstanceType `pulumi:"instanceTypes"`
	// String to filter results by zone id.
	ZoneId string `pulumi:"zoneId"`
}

type GetZonesZoneArgs added in v3.9.0

type GetZonesZoneArgs struct {
	// A list of instance type information collection
	InstanceTypes GetZonesZoneInstanceTypeArrayInput `pulumi:"instanceTypes"`
	// String to filter results by zone id.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetZonesZoneArgs) ElementType added in v3.9.0

func (GetZonesZoneArgs) ElementType() reflect.Type

func (GetZonesZoneArgs) ToGetZonesZoneOutput added in v3.9.0

func (i GetZonesZoneArgs) ToGetZonesZoneOutput() GetZonesZoneOutput

func (GetZonesZoneArgs) ToGetZonesZoneOutputWithContext added in v3.9.0

func (i GetZonesZoneArgs) ToGetZonesZoneOutputWithContext(ctx context.Context) GetZonesZoneOutput

type GetZonesZoneArray added in v3.9.0

type GetZonesZoneArray []GetZonesZoneInput

func (GetZonesZoneArray) ElementType added in v3.9.0

func (GetZonesZoneArray) ElementType() reflect.Type

func (GetZonesZoneArray) ToGetZonesZoneArrayOutput added in v3.9.0

func (i GetZonesZoneArray) ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput

func (GetZonesZoneArray) ToGetZonesZoneArrayOutputWithContext added in v3.9.0

func (i GetZonesZoneArray) ToGetZonesZoneArrayOutputWithContext(ctx context.Context) GetZonesZoneArrayOutput

type GetZonesZoneArrayInput added in v3.9.0

type GetZonesZoneArrayInput interface {
	pulumi.Input

	ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput
	ToGetZonesZoneArrayOutputWithContext(context.Context) GetZonesZoneArrayOutput
}

GetZonesZoneArrayInput is an input type that accepts GetZonesZoneArray and GetZonesZoneArrayOutput values. You can construct a concrete instance of `GetZonesZoneArrayInput` via:

GetZonesZoneArray{ GetZonesZoneArgs{...} }

type GetZonesZoneArrayOutput added in v3.9.0

type GetZonesZoneArrayOutput struct{ *pulumi.OutputState }

func (GetZonesZoneArrayOutput) ElementType added in v3.9.0

func (GetZonesZoneArrayOutput) ElementType() reflect.Type

func (GetZonesZoneArrayOutput) Index added in v3.9.0

func (GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutput added in v3.9.0

func (o GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput

func (GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutputWithContext added in v3.9.0

func (o GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutputWithContext(ctx context.Context) GetZonesZoneArrayOutput

type GetZonesZoneInput added in v3.9.0

type GetZonesZoneInput interface {
	pulumi.Input

	ToGetZonesZoneOutput() GetZonesZoneOutput
	ToGetZonesZoneOutputWithContext(context.Context) GetZonesZoneOutput
}

GetZonesZoneInput is an input type that accepts GetZonesZoneArgs and GetZonesZoneOutput values. You can construct a concrete instance of `GetZonesZoneInput` via:

GetZonesZoneArgs{...}

type GetZonesZoneInstanceType added in v3.9.0

type GetZonesZoneInstanceType struct {
	// File transfer protocol type. Valid values:
	ProtocolType string `pulumi:"protocolType"`
	// The storage type of the nas zones. Valid values:
	StorageType string `pulumi:"storageType"`
}

type GetZonesZoneInstanceTypeArgs added in v3.9.0

type GetZonesZoneInstanceTypeArgs struct {
	// File transfer protocol type. Valid values:
	ProtocolType pulumi.StringInput `pulumi:"protocolType"`
	// The storage type of the nas zones. Valid values:
	StorageType pulumi.StringInput `pulumi:"storageType"`
}

func (GetZonesZoneInstanceTypeArgs) ElementType added in v3.9.0

func (GetZonesZoneInstanceTypeArgs) ToGetZonesZoneInstanceTypeOutput added in v3.9.0

func (i GetZonesZoneInstanceTypeArgs) ToGetZonesZoneInstanceTypeOutput() GetZonesZoneInstanceTypeOutput

func (GetZonesZoneInstanceTypeArgs) ToGetZonesZoneInstanceTypeOutputWithContext added in v3.9.0

func (i GetZonesZoneInstanceTypeArgs) ToGetZonesZoneInstanceTypeOutputWithContext(ctx context.Context) GetZonesZoneInstanceTypeOutput

type GetZonesZoneInstanceTypeArray added in v3.9.0

type GetZonesZoneInstanceTypeArray []GetZonesZoneInstanceTypeInput

func (GetZonesZoneInstanceTypeArray) ElementType added in v3.9.0

func (GetZonesZoneInstanceTypeArray) ToGetZonesZoneInstanceTypeArrayOutput added in v3.9.0

func (i GetZonesZoneInstanceTypeArray) ToGetZonesZoneInstanceTypeArrayOutput() GetZonesZoneInstanceTypeArrayOutput

func (GetZonesZoneInstanceTypeArray) ToGetZonesZoneInstanceTypeArrayOutputWithContext added in v3.9.0

func (i GetZonesZoneInstanceTypeArray) ToGetZonesZoneInstanceTypeArrayOutputWithContext(ctx context.Context) GetZonesZoneInstanceTypeArrayOutput

type GetZonesZoneInstanceTypeArrayInput added in v3.9.0

type GetZonesZoneInstanceTypeArrayInput interface {
	pulumi.Input

	ToGetZonesZoneInstanceTypeArrayOutput() GetZonesZoneInstanceTypeArrayOutput
	ToGetZonesZoneInstanceTypeArrayOutputWithContext(context.Context) GetZonesZoneInstanceTypeArrayOutput
}

GetZonesZoneInstanceTypeArrayInput is an input type that accepts GetZonesZoneInstanceTypeArray and GetZonesZoneInstanceTypeArrayOutput values. You can construct a concrete instance of `GetZonesZoneInstanceTypeArrayInput` via:

GetZonesZoneInstanceTypeArray{ GetZonesZoneInstanceTypeArgs{...} }

type GetZonesZoneInstanceTypeArrayOutput added in v3.9.0

type GetZonesZoneInstanceTypeArrayOutput struct{ *pulumi.OutputState }

func (GetZonesZoneInstanceTypeArrayOutput) ElementType added in v3.9.0

func (GetZonesZoneInstanceTypeArrayOutput) Index added in v3.9.0

func (GetZonesZoneInstanceTypeArrayOutput) ToGetZonesZoneInstanceTypeArrayOutput added in v3.9.0

func (o GetZonesZoneInstanceTypeArrayOutput) ToGetZonesZoneInstanceTypeArrayOutput() GetZonesZoneInstanceTypeArrayOutput

func (GetZonesZoneInstanceTypeArrayOutput) ToGetZonesZoneInstanceTypeArrayOutputWithContext added in v3.9.0

func (o GetZonesZoneInstanceTypeArrayOutput) ToGetZonesZoneInstanceTypeArrayOutputWithContext(ctx context.Context) GetZonesZoneInstanceTypeArrayOutput

type GetZonesZoneInstanceTypeInput added in v3.9.0

type GetZonesZoneInstanceTypeInput interface {
	pulumi.Input

	ToGetZonesZoneInstanceTypeOutput() GetZonesZoneInstanceTypeOutput
	ToGetZonesZoneInstanceTypeOutputWithContext(context.Context) GetZonesZoneInstanceTypeOutput
}

GetZonesZoneInstanceTypeInput is an input type that accepts GetZonesZoneInstanceTypeArgs and GetZonesZoneInstanceTypeOutput values. You can construct a concrete instance of `GetZonesZoneInstanceTypeInput` via:

GetZonesZoneInstanceTypeArgs{...}

type GetZonesZoneInstanceTypeOutput added in v3.9.0

type GetZonesZoneInstanceTypeOutput struct{ *pulumi.OutputState }

func (GetZonesZoneInstanceTypeOutput) ElementType added in v3.9.0

func (GetZonesZoneInstanceTypeOutput) ProtocolType added in v3.9.0

File transfer protocol type. Valid values:

func (GetZonesZoneInstanceTypeOutput) StorageType added in v3.9.0

The storage type of the nas zones. Valid values:

func (GetZonesZoneInstanceTypeOutput) ToGetZonesZoneInstanceTypeOutput added in v3.9.0

func (o GetZonesZoneInstanceTypeOutput) ToGetZonesZoneInstanceTypeOutput() GetZonesZoneInstanceTypeOutput

func (GetZonesZoneInstanceTypeOutput) ToGetZonesZoneInstanceTypeOutputWithContext added in v3.9.0

func (o GetZonesZoneInstanceTypeOutput) ToGetZonesZoneInstanceTypeOutputWithContext(ctx context.Context) GetZonesZoneInstanceTypeOutput

type GetZonesZoneOutput added in v3.9.0

type GetZonesZoneOutput struct{ *pulumi.OutputState }

func (GetZonesZoneOutput) ElementType added in v3.9.0

func (GetZonesZoneOutput) ElementType() reflect.Type

func (GetZonesZoneOutput) InstanceTypes added in v3.9.0

A list of instance type information collection

func (GetZonesZoneOutput) ToGetZonesZoneOutput added in v3.9.0

func (o GetZonesZoneOutput) ToGetZonesZoneOutput() GetZonesZoneOutput

func (GetZonesZoneOutput) ToGetZonesZoneOutputWithContext added in v3.9.0

func (o GetZonesZoneOutput) ToGetZonesZoneOutputWithContext(ctx context.Context) GetZonesZoneOutput

func (GetZonesZoneOutput) ZoneId added in v3.9.0

String to filter results by zone id.

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/v3/go/alicloud/nas"
"github.com/pulumi/pulumi/sdk/v3/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

func (*MountTarget) ElementType() reflect.Type

func (*MountTarget) ToMountTargetOutput

func (i *MountTarget) ToMountTargetOutput() MountTargetOutput

func (*MountTarget) ToMountTargetOutputWithContext

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

func (*MountTarget) ToMountTargetPtrOutput

func (i *MountTarget) ToMountTargetPtrOutput() MountTargetPtrOutput

func (*MountTarget) ToMountTargetPtrOutputWithContext

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

type MountTargetArray []MountTargetInput

func (MountTargetArray) ElementType

func (MountTargetArray) ElementType() reflect.Type

func (MountTargetArray) ToMountTargetArrayOutput

func (i MountTargetArray) ToMountTargetArrayOutput() MountTargetArrayOutput

func (MountTargetArray) ToMountTargetArrayOutputWithContext

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

type MountTargetArrayInput

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

type MountTargetArrayOutput struct{ *pulumi.OutputState }

func (MountTargetArrayOutput) ElementType

func (MountTargetArrayOutput) ElementType() reflect.Type

func (MountTargetArrayOutput) Index

func (MountTargetArrayOutput) ToMountTargetArrayOutput

func (o MountTargetArrayOutput) ToMountTargetArrayOutput() MountTargetArrayOutput

func (MountTargetArrayOutput) ToMountTargetArrayOutputWithContext

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

type MountTargetInput

type MountTargetInput interface {
	pulumi.Input

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

type MountTargetMap

type MountTargetMap map[string]MountTargetInput

func (MountTargetMap) ElementType

func (MountTargetMap) ElementType() reflect.Type

func (MountTargetMap) ToMountTargetMapOutput

func (i MountTargetMap) ToMountTargetMapOutput() MountTargetMapOutput

func (MountTargetMap) ToMountTargetMapOutputWithContext

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

type MountTargetMapInput

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

type MountTargetMapOutput struct{ *pulumi.OutputState }

func (MountTargetMapOutput) ElementType

func (MountTargetMapOutput) ElementType() reflect.Type

func (MountTargetMapOutput) MapIndex

func (MountTargetMapOutput) ToMountTargetMapOutput

func (o MountTargetMapOutput) ToMountTargetMapOutput() MountTargetMapOutput

func (MountTargetMapOutput) ToMountTargetMapOutputWithContext

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

type MountTargetOutput

type MountTargetOutput struct{ *pulumi.OutputState }

func (MountTargetOutput) ElementType

func (MountTargetOutput) ElementType() reflect.Type

func (MountTargetOutput) ToMountTargetOutput

func (o MountTargetOutput) ToMountTargetOutput() MountTargetOutput

func (MountTargetOutput) ToMountTargetOutputWithContext

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

func (MountTargetOutput) ToMountTargetPtrOutput

func (o MountTargetOutput) ToMountTargetPtrOutput() MountTargetPtrOutput

func (MountTargetOutput) ToMountTargetPtrOutputWithContext

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

type MountTargetPtrInput

type MountTargetPtrInput interface {
	pulumi.Input

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

type MountTargetPtrOutput

type MountTargetPtrOutput struct{ *pulumi.OutputState }

func (MountTargetPtrOutput) Elem added in v3.9.0

func (MountTargetPtrOutput) ElementType

func (MountTargetPtrOutput) ElementType() reflect.Type

func (MountTargetPtrOutput) ToMountTargetPtrOutput

func (o MountTargetPtrOutput) ToMountTargetPtrOutput() MountTargetPtrOutput

func (MountTargetPtrOutput) ToMountTargetPtrOutputWithContext

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