get Nas File Systems
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);
Content copied to clipboard
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)
Content copied to clipboard
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.Apply(getNasFileSystemsResult => getNasFileSystemsResult.Systems[0]?.Id),
["ecdNasFileSystemId2"] = nameRegex.Apply(getNasFileSystemsResult => getNasFileSystemsResult.Systems[0]?.Id),
};
});
Content copied to clipboard
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
})
}
Content copied to clipboard
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();
ctx.export("ecdNasFileSystemId1", ids.applyValue(getNasFileSystemsResult -> getNasFileSystemsResult.systems()[0].id()));
final var nameRegex = EdsFunctions.getNasFileSystems(GetNasFileSystemsArgs.builder()
.nameRegex(defaultNasFileSystem.nasFileSystemName())
.build());
ctx.export("ecdNasFileSystemId2", nameRegex.applyValue(getNasFileSystemsResult -> getNasFileSystemsResult).applyValue(nameRegex -> nameRegex.applyValue(getNasFileSystemsResult -> getNasFileSystemsResult.systems()[0].id())));
}
}
Content copied to clipboard
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}
Content copied to clipboard
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.
name Regex
A regex string to filter results by Nas File System name.
office Site Id
The ID of office site.
output File
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
suspend fun getNasFileSystems(argument: suspend GetNasFileSystemsPlainArgsBuilder.() -> Unit): GetNasFileSystemsResult
Return
A collection of values returned by getNasFileSystems.
Parameters
argument
Builder for com.pulumi.alicloud.eds.kotlin.inputs.GetNasFileSystemsPlainArgs.