alicloud logo
Alibaba Cloud v3.34.0, Mar 17 23

alicloud.nas.getSnapshots

This data source provides the Nas Snapshots of the current Alibaba Cloud user.

NOTE: Available in v1.152.0+.

Example Usage

Basic Usage

using System.Collections.Generic;
using Pulumi;
using AliCloud = Pulumi.AliCloud;

return await Deployment.RunAsync(() => 
{
    var ids = AliCloud.Nas.GetSnapshots.Invoke();

    var nameRegex = AliCloud.Nas.GetSnapshots.Invoke(new()
    {
        NameRegex = "^my-Snapshot",
    });

    return new Dictionary<string, object?>
    {
        ["nasSnapshotId1"] = ids.Apply(getSnapshotsResult => getSnapshotsResult.Snapshots[0]?.Id),
        ["nasSnapshotId2"] = nameRegex.Apply(getSnapshotsResult => getSnapshotsResult.Snapshots[0]?.Id),
    };
});
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 {
		ids, err := nas.GetSnapshots(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("nasSnapshotId1", ids.Snapshots[0].Id)
		nameRegex, err := nas.GetSnapshots(ctx, &nas.GetSnapshotsArgs{
			NameRegex: pulumi.StringRef("^my-Snapshot"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("nasSnapshotId2", nameRegex.Snapshots[0].Id)
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.nas.NasFunctions;
import com.pulumi.alicloud.nas.inputs.GetSnapshotsArgs;
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) {
        final var ids = NasFunctions.getSnapshots();

        ctx.export("nasSnapshotId1", ids.applyValue(getSnapshotsResult -> getSnapshotsResult.snapshots()[0].id()));
        final var nameRegex = NasFunctions.getSnapshots(GetSnapshotsArgs.builder()
            .nameRegex("^my-Snapshot")
            .build());

        ctx.export("nasSnapshotId2", nameRegex.applyValue(getSnapshotsResult -> getSnapshotsResult.snapshots()[0].id()));
    }
}
import pulumi
import pulumi_alicloud as alicloud

ids = alicloud.nas.get_snapshots()
pulumi.export("nasSnapshotId1", ids.snapshots[0].id)
name_regex = alicloud.nas.get_snapshots(name_regex="^my-Snapshot")
pulumi.export("nasSnapshotId2", name_regex.snapshots[0].id)
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";

const ids = alicloud.nas.getSnapshots({});
export const nasSnapshotId1 = ids.then(ids => ids.snapshots?.[0]?.id);
const nameRegex = alicloud.nas.getSnapshots({
    nameRegex: "^my-Snapshot",
});
export const nasSnapshotId2 = nameRegex.then(nameRegex => nameRegex.snapshots?.[0]?.id);
variables:
  ids:
    fn::invoke:
      Function: alicloud:nas:getSnapshots
      Arguments: {}
  nameRegex:
    fn::invoke:
      Function: alicloud:nas:getSnapshots
      Arguments:
        nameRegex: ^my-Snapshot
outputs:
  nasSnapshotId1: ${ids.snapshots[0].id}
  nasSnapshotId2: ${nameRegex.snapshots[0].id}

Using getSnapshots

Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

function getSnapshots(args: GetSnapshotsArgs, opts?: InvokeOptions): Promise<GetSnapshotsResult>
function getSnapshotsOutput(args: GetSnapshotsOutputArgs, opts?: InvokeOptions): Output<GetSnapshotsResult>
def get_snapshots(file_system_id: Optional[str] = None,
                  ids: Optional[Sequence[str]] = None,
                  name_regex: Optional[str] = None,
                  output_file: Optional[str] = None,
                  snapshot_name: Optional[str] = None,
                  status: Optional[str] = None,
                  opts: Optional[InvokeOptions] = None) -> GetSnapshotsResult
def get_snapshots_output(file_system_id: Optional[pulumi.Input[str]] = None,
                  ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                  name_regex: Optional[pulumi.Input[str]] = None,
                  output_file: Optional[pulumi.Input[str]] = None,
                  snapshot_name: Optional[pulumi.Input[str]] = None,
                  status: Optional[pulumi.Input[str]] = None,
                  opts: Optional[InvokeOptions] = None) -> Output[GetSnapshotsResult]
func GetSnapshots(ctx *Context, args *GetSnapshotsArgs, opts ...InvokeOption) (*GetSnapshotsResult, error)
func GetSnapshotsOutput(ctx *Context, args *GetSnapshotsOutputArgs, opts ...InvokeOption) GetSnapshotsResultOutput

> Note: This function is named GetSnapshots in the Go SDK.

public static class GetSnapshots 
{
    public static Task<GetSnapshotsResult> InvokeAsync(GetSnapshotsArgs args, InvokeOptions? opts = null)
    public static Output<GetSnapshotsResult> Invoke(GetSnapshotsInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetSnapshotsResult> getSnapshots(GetSnapshotsArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
  function: alicloud:nas/getSnapshots:getSnapshots
  arguments:
    # arguments dictionary

The following arguments are supported:

FileSystemId string

The ID of the file system.

Ids List<string>

A list of Snapshot IDs.

NameRegex string

A regex string to filter results by Snapshot name.

OutputFile string
SnapshotName string

The name of the snapshot.

Status string

The status of the snapshot.

FileSystemId string

The ID of the file system.

Ids []string

A list of Snapshot IDs.

NameRegex string

A regex string to filter results by Snapshot name.

OutputFile string
SnapshotName string

The name of the snapshot.

Status string

The status of the snapshot.

fileSystemId String

The ID of the file system.

ids List<String>

A list of Snapshot IDs.

nameRegex String

A regex string to filter results by Snapshot name.

outputFile String
snapshotName String

The name of the snapshot.

status String

The status of the snapshot.

fileSystemId string

The ID of the file system.

ids string[]

A list of Snapshot IDs.

nameRegex string

A regex string to filter results by Snapshot name.

outputFile string
snapshotName string

The name of the snapshot.

status string

The status of the snapshot.

file_system_id str

The ID of the file system.

ids Sequence[str]

A list of Snapshot IDs.

name_regex str

A regex string to filter results by Snapshot name.

output_file str
snapshot_name str

The name of the snapshot.

status str

The status of the snapshot.

fileSystemId String

The ID of the file system.

ids List<String>

A list of Snapshot IDs.

nameRegex String

A regex string to filter results by Snapshot name.

outputFile String
snapshotName String

The name of the snapshot.

status String

The status of the snapshot.

getSnapshots Result

The following output properties are available:

Id string

The provider-assigned unique ID for this managed resource.

Ids List<string>
Names List<string>
Snapshots List<Pulumi.AliCloud.Nas.Outputs.GetSnapshotsSnapshot>
FileSystemId string
NameRegex string
OutputFile string
SnapshotName string
Status string
Id string

The provider-assigned unique ID for this managed resource.

Ids []string
Names []string
Snapshots []GetSnapshotsSnapshot
FileSystemId string
NameRegex string
OutputFile string
SnapshotName string
Status string
id String

The provider-assigned unique ID for this managed resource.

ids List<String>
names List<String>
snapshots List<GetSnapshotsSnapshot>
fileSystemId String
nameRegex String
outputFile String
snapshotName String
status String
id string

The provider-assigned unique ID for this managed resource.

ids string[]
names string[]
snapshots GetSnapshotsSnapshot[]
fileSystemId string
nameRegex string
outputFile string
snapshotName string
status string
id str

The provider-assigned unique ID for this managed resource.

ids Sequence[str]
names Sequence[str]
snapshots Sequence[GetSnapshotsSnapshot]
file_system_id str
name_regex str
output_file str
snapshot_name str
status str
id String

The provider-assigned unique ID for this managed resource.

ids List<String>
names List<String>
snapshots List<Property Map>
fileSystemId String
nameRegex String
outputFile String
snapshotName String
status String

Supporting Types

GetSnapshotsSnapshot

CreateTime string

The creation time of the resource.

Description string

The description of the snapshot.

EncryptType int

The type of the encryption.

Id string

The ID of the Snapshot.

Progress string

The progress of the snapshot creation. The value of this parameter is expressed as a percentage.

RemainTime int

The remaining time that is required to create the snapshot. Unit: seconds.

RetentionDays int

The retention period of the automatic snapshot. Unit: days.

SnapshotId string

The ID of the resource.

SnapshotName string

The name of the snapshot.

SourceFileSystemId string

The ID of the source file system.

SourceFileSystemSize string

The capacity of the source file system. Unit: GiB.

SourceFileSystemVersion string

The version of the source file system.

Status string

The status of the snapshot.

CreateTime string

The creation time of the resource.

Description string

The description of the snapshot.

EncryptType int

The type of the encryption.

Id string

The ID of the Snapshot.

Progress string

The progress of the snapshot creation. The value of this parameter is expressed as a percentage.

RemainTime int

The remaining time that is required to create the snapshot. Unit: seconds.

RetentionDays int

The retention period of the automatic snapshot. Unit: days.

SnapshotId string

The ID of the resource.

SnapshotName string

The name of the snapshot.

SourceFileSystemId string

The ID of the source file system.

SourceFileSystemSize string

The capacity of the source file system. Unit: GiB.

SourceFileSystemVersion string

The version of the source file system.

Status string

The status of the snapshot.

createTime String

The creation time of the resource.

description String

The description of the snapshot.

encryptType Integer

The type of the encryption.

id String

The ID of the Snapshot.

progress String

The progress of the snapshot creation. The value of this parameter is expressed as a percentage.

remainTime Integer

The remaining time that is required to create the snapshot. Unit: seconds.

retentionDays Integer

The retention period of the automatic snapshot. Unit: days.

snapshotId String

The ID of the resource.

snapshotName String

The name of the snapshot.

sourceFileSystemId String

The ID of the source file system.

sourceFileSystemSize String

The capacity of the source file system. Unit: GiB.

sourceFileSystemVersion String

The version of the source file system.

status String

The status of the snapshot.

createTime string

The creation time of the resource.

description string

The description of the snapshot.

encryptType number

The type of the encryption.

id string

The ID of the Snapshot.

progress string

The progress of the snapshot creation. The value of this parameter is expressed as a percentage.

remainTime number

The remaining time that is required to create the snapshot. Unit: seconds.

retentionDays number

The retention period of the automatic snapshot. Unit: days.

snapshotId string

The ID of the resource.

snapshotName string

The name of the snapshot.

sourceFileSystemId string

The ID of the source file system.

sourceFileSystemSize string

The capacity of the source file system. Unit: GiB.

sourceFileSystemVersion string

The version of the source file system.

status string

The status of the snapshot.

create_time str

The creation time of the resource.

description str

The description of the snapshot.

encrypt_type int

The type of the encryption.

id str

The ID of the Snapshot.

progress str

The progress of the snapshot creation. The value of this parameter is expressed as a percentage.

remain_time int

The remaining time that is required to create the snapshot. Unit: seconds.

retention_days int

The retention period of the automatic snapshot. Unit: days.

snapshot_id str

The ID of the resource.

snapshot_name str

The name of the snapshot.

source_file_system_id str

The ID of the source file system.

source_file_system_size str

The capacity of the source file system. Unit: GiB.

source_file_system_version str

The version of the source file system.

status str

The status of the snapshot.

createTime String

The creation time of the resource.

description String

The description of the snapshot.

encryptType Number

The type of the encryption.

id String

The ID of the Snapshot.

progress String

The progress of the snapshot creation. The value of this parameter is expressed as a percentage.

remainTime Number

The remaining time that is required to create the snapshot. Unit: seconds.

retentionDays Number

The retention period of the automatic snapshot. Unit: days.

snapshotId String

The ID of the resource.

snapshotName String

The name of the snapshot.

sourceFileSystemId String

The ID of the source file system.

sourceFileSystemSize String

The capacity of the source file system. Unit: GiB.

sourceFileSystemVersion String

The version of the source file system.

status String

The status of the snapshot.

Package Details

Repository
Alibaba Cloud pulumi/pulumi-alicloud
License
Apache-2.0
Notes

This Pulumi package is based on the alicloud Terraform Provider.