get Snapshots
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.Apply(getSnapshotsResult => getSnapshotsResult.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
A collection of arguments for invoking getSnapshots.
Return
A collection of values returned by getSnapshots.
See also
Parameters
The name of OSS bucket.
The time when the snapshot completed. UNIX time in seconds.
Complete time filter operator. Optional values: MATCH_TERM, GREATER_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN, LESS_THAN_OR_EQUAL, BETWEEN.
File System Creation Time of Nas. Unix Time Seconds.
The ID of NAS File system.
A list of Snapshot IDs.
The ID of ECS instance.
File name where to save data source results (after running pulumi preview).
Data source type, optional values: ECS_FILE, OSS, NAS.
The status of snapshot execution. Possible values: COMPLETE, PARTIAL_COMPLETE, FAILED.
The ID of Vault.
Return
A collection of values returned by getSnapshots.
See also
Parameters
Builder for com.pulumi.alicloud.hbr.kotlin.inputs.GetSnapshotsPlainArgs.