getSnapshots

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

NOTE: Available in v1.133.0+.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const default = alicloud.hbr.getEcsBackupPlans({
nameRegex: "plan-tf-used-dont-delete",
});
const defaultGetOssBackupPlans = alicloud.hbr.getOssBackupPlans({
nameRegex: "plan-tf-used-dont-delete",
});
const defaultGetNasBackupPlans = alicloud.hbr.getNasBackupPlans({
nameRegex: "plan-tf-used-dont-delete",
});
const ecsSnapshots = Promise.all([_default, _default]).then(([_default, _default1]) => alicloud.hbr.getSnapshots({
sourceType: "ECS_FILE",
vaultId: _default.plans?.[0]?.vaultId,
instanceId: _default1.plans?.[0]?.instanceId,
}));
const ossSnapshots = Promise.all([defaultGetOssBackupPlans, defaultGetOssBackupPlans]).then(([defaultGetOssBackupPlans, defaultGetOssBackupPlans1]) => alicloud.hbr.getSnapshots({
sourceType: "OSS",
vaultId: defaultGetOssBackupPlans.plans?.[0]?.vaultId,
bucket: defaultGetOssBackupPlans1.plans?.[0]?.bucket,
completeTime: "2021-07-20T14:17:15CST,2021-07-24T14:17:15CST",
completeTimeChecker: "BETWEEN",
}));
const nasSnapshots = Promise.all([defaultGetNasBackupPlans, defaultGetNasBackupPlans, defaultGetNasBackupPlans]).then(([defaultGetNasBackupPlans, defaultGetNasBackupPlans1, defaultGetNasBackupPlans2]) => alicloud.hbr.getSnapshots({
sourceType: "NAS",
vaultId: defaultGetNasBackupPlans.plans?.[0]?.vaultId,
fileSystemId: defaultGetNasBackupPlans1.plans?.[0]?.fileSystemId,
createTime: defaultGetNasBackupPlans2.plans?.[0]?.createTime,
completeTime: "2021-08-23T14:17:15CST",
completeTimeChecker: "GREATER_THAN_OR_EQUAL",
}));
export const hbrSnapshotId1 = nasSnapshots.then(nasSnapshots => nasSnapshots.snapshots?.[0]?.id);
import pulumi
import pulumi_alicloud as alicloud
default = alicloud.hbr.get_ecs_backup_plans(name_regex="plan-tf-used-dont-delete")
default_get_oss_backup_plans = alicloud.hbr.get_oss_backup_plans(name_regex="plan-tf-used-dont-delete")
default_get_nas_backup_plans = alicloud.hbr.get_nas_backup_plans(name_regex="plan-tf-used-dont-delete")
ecs_snapshots = alicloud.hbr.get_snapshots(source_type="ECS_FILE",
vault_id=default.plans[0].vault_id,
instance_id=default.plans[0].instance_id)
oss_snapshots = alicloud.hbr.get_snapshots(source_type="OSS",
vault_id=default_get_oss_backup_plans.plans[0].vault_id,
bucket=default_get_oss_backup_plans.plans[0].bucket,
complete_time="2021-07-20T14:17:15CST,2021-07-24T14:17:15CST",
complete_time_checker="BETWEEN")
nas_snapshots = alicloud.hbr.get_snapshots(source_type="NAS",
vault_id=default_get_nas_backup_plans.plans[0].vault_id,
file_system_id=default_get_nas_backup_plans.plans[0].file_system_id,
create_time=default_get_nas_backup_plans.plans[0].create_time,
complete_time="2021-08-23T14:17:15CST",
complete_time_checker="GREATER_THAN_OR_EQUAL")
pulumi.export("hbrSnapshotId1", nas_snapshots.snapshots[0].id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var @default = AliCloud.Hbr.GetEcsBackupPlans.Invoke(new()
{
NameRegex = "plan-tf-used-dont-delete",
});
var defaultGetOssBackupPlans = AliCloud.Hbr.GetOssBackupPlans.Invoke(new()
{
NameRegex = "plan-tf-used-dont-delete",
});
var defaultGetNasBackupPlans = AliCloud.Hbr.GetNasBackupPlans.Invoke(new()
{
NameRegex = "plan-tf-used-dont-delete",
});
var ecsSnapshots = AliCloud.Hbr.GetSnapshots.Invoke(new()
{
SourceType = "ECS_FILE",
VaultId = @default.Apply(getEcsBackupPlansResult => getEcsBackupPlansResult.Plans[0]?.VaultId),
InstanceId = @default.Apply(getEcsBackupPlansResult => getEcsBackupPlansResult.Plans[0]?.InstanceId),
});
var ossSnapshots = AliCloud.Hbr.GetSnapshots.Invoke(new()
{
SourceType = "OSS",
VaultId = defaultGetOssBackupPlans.Apply(getOssBackupPlansResult => getOssBackupPlansResult.Plans[0]?.VaultId),
Bucket = defaultGetOssBackupPlans.Apply(getOssBackupPlansResult => getOssBackupPlansResult.Plans[0]?.Bucket),
CompleteTime = "2021-07-20T14:17:15CST,2021-07-24T14:17:15CST",
CompleteTimeChecker = "BETWEEN",
});
var nasSnapshots = AliCloud.Hbr.GetSnapshots.Invoke(new()
{
SourceType = "NAS",
VaultId = defaultGetNasBackupPlans.Apply(getNasBackupPlansResult => getNasBackupPlansResult.Plans[0]?.VaultId),
FileSystemId = defaultGetNasBackupPlans.Apply(getNasBackupPlansResult => getNasBackupPlansResult.Plans[0]?.FileSystemId),
CreateTime = defaultGetNasBackupPlans.Apply(getNasBackupPlansResult => getNasBackupPlansResult.Plans[0]?.CreateTime),
CompleteTime = "2021-08-23T14:17:15CST",
CompleteTimeChecker = "GREATER_THAN_OR_EQUAL",
});
return new Dictionary<string, object?>
{
["hbrSnapshotId1"] = nasSnapshots&#46;Apply(getSnapshotsResult => getSnapshotsResult&#46;Snapshots[0]?.Id),
};
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/hbr"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_default, err := hbr.GetEcsBackupPlans(ctx, &hbr.GetEcsBackupPlansArgs{
NameRegex: pulumi.StringRef("plan-tf-used-dont-delete"),
}, nil)
if err != nil {
return err
}
defaultGetOssBackupPlans, err := hbr.GetOssBackupPlans(ctx, &hbr.GetOssBackupPlansArgs{
NameRegex: pulumi.StringRef("plan-tf-used-dont-delete"),
}, nil)
if err != nil {
return err
}
defaultGetNasBackupPlans, err := hbr.GetNasBackupPlans(ctx, &hbr.GetNasBackupPlansArgs{
NameRegex: pulumi.StringRef("plan-tf-used-dont-delete"),
}, nil)
if err != nil {
return err
}
_, err = hbr.GetSnapshots(ctx, &hbr.GetSnapshotsArgs{
SourceType: "ECS_FILE",
VaultId: _default.Plans[0].VaultId,
InstanceId: pulumi.StringRef(_default.Plans[0].InstanceId),
}, nil)
if err != nil {
return err
}
_, err = hbr.GetSnapshots(ctx, &hbr.GetSnapshotsArgs{
SourceType: "OSS",
VaultId: defaultGetOssBackupPlans.Plans[0].VaultId,
Bucket: pulumi.StringRef(defaultGetOssBackupPlans.Plans[0].Bucket),
CompleteTime: pulumi.StringRef("2021-07-20T14:17:15CST,2021-07-24T14:17:15CST"),
CompleteTimeChecker: pulumi.StringRef("BETWEEN"),
}, nil)
if err != nil {
return err
}
nasSnapshots, err := hbr.GetSnapshots(ctx, &hbr.GetSnapshotsArgs{
SourceType: "NAS",
VaultId: defaultGetNasBackupPlans.Plans[0].VaultId,
FileSystemId: pulumi.StringRef(defaultGetNasBackupPlans.Plans[0].FileSystemId),
CreateTime: pulumi.StringRef(defaultGetNasBackupPlans.Plans[0].CreateTime),
CompleteTime: pulumi.StringRef("2021-08-23T14:17:15CST"),
CompleteTimeChecker: pulumi.StringRef("GREATER_THAN_OR_EQUAL"),
}, nil)
if err != nil {
return err
}
ctx.Export("hbrSnapshotId1", nasSnapshots.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.hbr.HbrFunctions;
import com.pulumi.alicloud.hbr.inputs.GetEcsBackupPlansArgs;
import com.pulumi.alicloud.hbr.inputs.GetOssBackupPlansArgs;
import com.pulumi.alicloud.hbr.inputs.GetNasBackupPlansArgs;
import com.pulumi.alicloud.hbr.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 default = HbrFunctions.getEcsBackupPlans(GetEcsBackupPlansArgs.builder()
.nameRegex("plan-tf-used-dont-delete")
.build());
final var defaultGetOssBackupPlans = HbrFunctions.getOssBackupPlans(GetOssBackupPlansArgs.builder()
.nameRegex("plan-tf-used-dont-delete")
.build());
final var defaultGetNasBackupPlans = HbrFunctions.getNasBackupPlans(GetNasBackupPlansArgs.builder()
.nameRegex("plan-tf-used-dont-delete")
.build());
final var ecsSnapshots = HbrFunctions.getSnapshots(GetSnapshotsArgs.builder()
.sourceType("ECS_FILE")
.vaultId(default_.plans()[0].vaultId())
.instanceId(default_.plans()[0].instanceId())
.build());
final var ossSnapshots = HbrFunctions.getSnapshots(GetSnapshotsArgs.builder()
.sourceType("OSS")
.vaultId(defaultGetOssBackupPlans.applyValue(getOssBackupPlansResult -> getOssBackupPlansResult.plans()[0].vaultId()))
.bucket(defaultGetOssBackupPlans.applyValue(getOssBackupPlansResult -> getOssBackupPlansResult.plans()[0].bucket()))
.completeTime("2021-07-20T14:17:15CST,2021-07-24T14:17:15CST")
.completeTimeChecker("BETWEEN")
.build());
final var nasSnapshots = HbrFunctions.getSnapshots(GetSnapshotsArgs.builder()
.sourceType("NAS")
.vaultId(defaultGetNasBackupPlans.applyValue(getNasBackupPlansResult -> getNasBackupPlansResult.plans()[0].vaultId()))
.fileSystemId(defaultGetNasBackupPlans.applyValue(getNasBackupPlansResult -> getNasBackupPlansResult.plans()[0].fileSystemId()))
.createTime(defaultGetNasBackupPlans.applyValue(getNasBackupPlansResult -> getNasBackupPlansResult.plans()[0].createTime()))
.completeTime("2021-08-23T14:17:15CST")
.completeTimeChecker("GREATER_THAN_OR_EQUAL")
.build());
ctx.export("hbrSnapshotId1", nasSnapshots.applyValue(getSnapshotsResult -> getSnapshotsResult.snapshots()[0].id()));
}
}
variables:
default:
fn::invoke:
Function: alicloud:hbr:getEcsBackupPlans
Arguments:
nameRegex: plan-tf-used-dont-delete
defaultGetOssBackupPlans:
fn::invoke:
Function: alicloud:hbr:getOssBackupPlans
Arguments:
nameRegex: plan-tf-used-dont-delete
defaultGetNasBackupPlans:
fn::invoke:
Function: alicloud:hbr:getNasBackupPlans
Arguments:
nameRegex: plan-tf-used-dont-delete
ecsSnapshots:
fn::invoke:
Function: alicloud:hbr:getSnapshots
Arguments:
sourceType: ECS_FILE
vaultId: ${default.plans[0].vaultId}
instanceId: ${default.plans[0].instanceId}
ossSnapshots:
fn::invoke:
Function: alicloud:hbr:getSnapshots
Arguments:
sourceType: OSS
vaultId: ${defaultGetOssBackupPlans.plans[0].vaultId}
bucket: ${defaultGetOssBackupPlans.plans[0].bucket}
completeTime: 2021-07-20T14:17:15CST,2021-07-24T14:17:15CST
completeTimeChecker: BETWEEN
nasSnapshots:
fn::invoke:
Function: alicloud:hbr:getSnapshots
Arguments:
sourceType: NAS
vaultId: ${defaultGetNasBackupPlans.plans[0].vaultId}
fileSystemId: ${defaultGetNasBackupPlans.plans[0].fileSystemId}
createTime: ${defaultGetNasBackupPlans.plans[0].createTime}
completeTime: 2021-08-23T14:17:15CST
completeTimeChecker: GREATER_THAN_OR_EQUAL
outputs:
hbrSnapshotId1: ${nasSnapshots.snapshots[0].id}

Return

A collection of values returned by getSnapshots.

Parameters

argument

A collection of arguments for invoking getSnapshots.


suspend fun getSnapshots(bucket: String? = null, completeTime: String? = null, completeTimeChecker: String? = null, createTime: String? = null, fileSystemId: String? = null, ids: List<String>? = null, instanceId: String? = null, limit: Int? = null, outputFile: String? = null, query: String? = null, sourceType: String, status: String? = null, vaultId: String): GetSnapshotsResult

Return

A collection of values returned by getSnapshots.

See also

Parameters

bucket

The name of OSS bucket.

completeTime

The time when the snapshot completed. UNIX time in seconds.

completeTimeChecker

Complete time filter operator. Optional values: MATCH_TERM, GREATER_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN, LESS_THAN_OR_EQUAL, BETWEEN.

createTime

File System Creation Time of Nas. Unix Time Seconds.

fileSystemId

The ID of NAS File system.

ids

A list of Snapshot IDs.

instanceId

The ID of ECS instance.

limit
outputFile

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

query
sourceType

Data source type, optional values: ECS_FILE, OSS, NAS.

status

The status of snapshot execution. Possible values: COMPLETE, PARTIAL_COMPLETE, FAILED.

vaultId

The ID of Vault.


Return

A collection of values returned by getSnapshots.

See also

Parameters

argument

Builder for com.pulumi.alicloud.hbr.kotlin.inputs.GetSnapshotsPlainArgs.