getNasFileSystems

This data source provides the Ecd Nas File Systems of the current Alibaba Cloud user.

NOTE: Available in v1.141.0+.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const _default = new alicloud.eds.SimpleOfficeSite("default", {
cidrBlock: "172.16.0.0/12",
desktopAccessType: "Internet",
officeSiteName: "your_office_site_name",
enableInternetAccess: false,
});
const defaultNasFileSystem = new alicloud.eds.NasFileSystem("default", {
description: "your_description",
officeSiteId: _default.id,
nasFileSystemName: "your_nas_file_system_name",
});
const ids = alicloud.eds.getNasFileSystems({});
export const ecdNasFileSystemId1 = ids.then(ids => ids.systems?.[0]?.id);
const nameRegex = defaultNasFileSystem.nasFileSystemName.apply(nasFileSystemName => alicloud.eds.getNasFileSystemsOutput({
nameRegex: nasFileSystemName,
}));
export const ecdNasFileSystemId2 = nameRegex.apply(nameRegex => nameRegex.systems?.[0]?.id);
import pulumi
import pulumi_alicloud as alicloud
default = alicloud.eds.SimpleOfficeSite("default",
cidr_block="172.16.0.0/12",
desktop_access_type="Internet",
office_site_name="your_office_site_name",
enable_internet_access=False)
default_nas_file_system = alicloud.eds.NasFileSystem("default",
description="your_description",
office_site_id=default.id,
nas_file_system_name="your_nas_file_system_name")
ids = alicloud.eds.get_nas_file_systems()
pulumi.export("ecdNasFileSystemId1", ids.systems[0].id)
name_regex = default_nas_file_system.nas_file_system_name.apply(lambda nas_file_system_name: alicloud.eds.get_nas_file_systems_output(name_regex=nas_file_system_name))
pulumi.export("ecdNasFileSystemId2", name_regex.systems[0].id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var @default = new AliCloud.Eds.SimpleOfficeSite("default", new()
{
CidrBlock = "172.16.0.0/12",
DesktopAccessType = "Internet",
OfficeSiteName = "your_office_site_name",
EnableInternetAccess = false,
});
var defaultNasFileSystem = new AliCloud.Eds.NasFileSystem("default", new()
{
Description = "your_description",
OfficeSiteId = @default.Id,
NasFileSystemName = "your_nas_file_system_name",
});
var ids = AliCloud.Eds.GetNasFileSystems.Invoke();
var nameRegex = AliCloud.Eds.GetNasFileSystems.Invoke(new()
{
NameRegex = defaultNasFileSystem.NasFileSystemName,
});
return new Dictionary<string, object?>
{
["ecdNasFileSystemId1"] = ids&#46;Apply(getNasFileSystemsResult => getNasFileSystemsResult&#46;Systems[0]?.Id),
["ecdNasFileSystemId2"] = nameRegex&#46;Apply(getNasFileSystemsResult => getNasFileSystemsResult&#46;Systems[0]?.Id),
};
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_default, err := eds.NewSimpleOfficeSite(ctx, "default", &eds.SimpleOfficeSiteArgs{
CidrBlock: pulumi.String("172.16.0.0/12"),
DesktopAccessType: pulumi.String("Internet"),
OfficeSiteName: pulumi.String("your_office_site_name"),
EnableInternetAccess: pulumi.Bool(false),
})
if err != nil {
return err
}
defaultNasFileSystem, err := eds.NewNasFileSystem(ctx, "default", &eds.NasFileSystemArgs{
Description: pulumi.String("your_description"),
OfficeSiteId: _default.ID(),
NasFileSystemName: pulumi.String("your_nas_file_system_name"),
})
if err != nil {
return err
}
ids, err := eds.GetNasFileSystems(ctx, &eds.GetNasFileSystemsArgs{}, nil)
if err != nil {
return err
}
ctx.Export("ecdNasFileSystemId1", ids.Systems[0].Id)
nameRegex := defaultNasFileSystem.NasFileSystemName.ApplyT(func(nasFileSystemName *string) (eds.GetNasFileSystemsResult, error) {
return eds.GetNasFileSystemsResult(interface{}(eds.GetNasFileSystemsOutput(ctx, eds.GetNasFileSystemsOutputArgs{
NameRegex: nasFileSystemName,
}, nil))), nil
}).(eds.GetNasFileSystemsResultOutput)
ctx.Export("ecdNasFileSystemId2", nameRegex.ApplyT(func(nameRegex eds.GetNasFileSystemsResult) (*string, error) {
return &nameRegex.Systems[0].Id, nil
}).(pulumi.StringPtrOutput))
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.eds.SimpleOfficeSite;
import com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;
import com.pulumi.alicloud.eds.NasFileSystem;
import com.pulumi.alicloud.eds.NasFileSystemArgs;
import com.pulumi.alicloud.eds.EdsFunctions;
import com.pulumi.alicloud.eds.inputs.GetNasFileSystemsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var default_ = new SimpleOfficeSite("default", SimpleOfficeSiteArgs.builder()
.cidrBlock("172.16.0.0/12")
.desktopAccessType("Internet")
.officeSiteName("your_office_site_name")
.enableInternetAccess(false)
.build());
var defaultNasFileSystem = new NasFileSystem("defaultNasFileSystem", NasFileSystemArgs.builder()
.description("your_description")
.officeSiteId(default_.id())
.nasFileSystemName("your_nas_file_system_name")
.build());
final var ids = EdsFunctions.getNasFileSystems(GetNasFileSystemsArgs.builder()
.build());
ctx.export("ecdNasFileSystemId1", ids.systems()[0].id());
final var nameRegex = defaultNasFileSystem.nasFileSystemName().applyValue(_nasFileSystemName -> EdsFunctions.getNasFileSystems(GetNasFileSystemsArgs.builder()
.nameRegex(_nasFileSystemName)
.build()));
ctx.export("ecdNasFileSystemId2", nameRegex.applyValue(_nameRegex -> _nameRegex.systems()[0].id()));
}
}
resources:
default:
type: alicloud:eds:SimpleOfficeSite
properties:
cidrBlock: 172.16.0.0/12
desktopAccessType: Internet
officeSiteName: your_office_site_name
enableInternetAccess: false
defaultNasFileSystem:
type: alicloud:eds:NasFileSystem
name: default
properties:
description: your_description
officeSiteId: ${default.id}
nasFileSystemName: your_nas_file_system_name
variables:
ids:
fn::invoke:
function: alicloud:eds:getNasFileSystems
arguments: {}
nameRegex:
fn::invoke:
function: alicloud:eds:getNasFileSystems
arguments:
nameRegex: ${defaultNasFileSystem.nasFileSystemName}
outputs:
ecdNasFileSystemId1: ${ids.systems[0].id}
ecdNasFileSystemId2: ${nameRegex.systems[0].id}

Return

A collection of values returned by getNasFileSystems.

Parameters

argument

A collection of arguments for invoking getNasFileSystems.


suspend fun getNasFileSystems(ids: List<String>? = null, nameRegex: String? = null, officeSiteId: String? = null, outputFile: String? = null, status: String? = null): GetNasFileSystemsResult

Return

A collection of values returned by getNasFileSystems.

Parameters

ids

A list of Nas File System IDs.

nameRegex

A regex string to filter results by Nas File System name.

officeSiteId

The ID of office site.

outputFile

File name where to save data source results (after running pulumi preview).

status

The status of nas file system. Valid values: Pending, Running, Stopped,Deleting, Deleted, Invalid.

See also


Return

A collection of values returned by getNasFileSystems.

Parameters

argument

Builder for com.pulumi.alicloud.eds.kotlin.inputs.GetNasFileSystemsPlainArgs.

See also