Snapshot Args
data class SnapshotArgs(val description: Output<String>? = null, val diskId: Output<String>? = null, val ensRegionId: Output<String>? = null, val snapshotName: Output<String>? = null) : ConvertibleToJava<SnapshotArgs>
Provides a ENS Snapshot resource. Snapshot. When you use it for the first time, please contact the product classmates to add a resource whitelist. For information about ENS Snapshot and how to use it, see What is Snapshot.
NOTE: Available since v1.213.0.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "terraform-example";
const disk = new alicloud.ens.Disk("disk", {
category: "cloud_efficiency",
size: 20,
paymentType: "PayAsYouGo",
ensRegionId: "ch-zurich-1",
});
const _default = new alicloud.ens.Snapshot("default", {
description: name,
ensRegionId: "ch-zurich-1",
snapshotName: name,
diskId: disk.id,
});
Content copied to clipboard
import pulumi
import pulumi_alicloud as alicloud
config = pulumi.Config()
name = config.get("name")
if name is None:
name = "terraform-example"
disk = alicloud.ens.Disk("disk",
category="cloud_efficiency",
size=20,
payment_type="PayAsYouGo",
ens_region_id="ch-zurich-1")
default = alicloud.ens.Snapshot("default",
description=name,
ens_region_id="ch-zurich-1",
snapshot_name=name,
disk_id=disk.id)
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var name = config.Get("name") ?? "terraform-example";
var disk = new AliCloud.Ens.Disk("disk", new()
{
Category = "cloud_efficiency",
Size = 20,
PaymentType = "PayAsYouGo",
EnsRegionId = "ch-zurich-1",
});
var @default = new AliCloud.Ens.Snapshot("default", new()
{
Description = name,
EnsRegionId = "ch-zurich-1",
SnapshotName = name,
DiskId = disk.Id,
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
name := "terraform-example"
if param := cfg.Get("name"); param != "" {
name = param
}
disk, err := ens.NewDisk(ctx, "disk", &ens.DiskArgs{
Category: pulumi.String("cloud_efficiency"),
Size: pulumi.Int(20),
PaymentType: pulumi.String("PayAsYouGo"),
EnsRegionId: pulumi.String("ch-zurich-1"),
})
if err != nil {
return err
}
_, err = ens.NewSnapshot(ctx, "default", &ens.SnapshotArgs{
Description: pulumi.String(name),
EnsRegionId: pulumi.String("ch-zurich-1"),
SnapshotName: pulumi.String(name),
DiskId: disk.ID(),
})
if err != nil {
return err
}
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.ens.Disk;
import com.pulumi.alicloud.ens.DiskArgs;
import com.pulumi.alicloud.ens.Snapshot;
import com.pulumi.alicloud.ens.SnapshotArgs;
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 config = ctx.config();
final var name = config.get("name").orElse("terraform-example");
var disk = new Disk("disk", DiskArgs.builder()
.category("cloud_efficiency")
.size("20")
.paymentType("PayAsYouGo")
.ensRegionId("ch-zurich-1")
.build());
var default_ = new Snapshot("default", SnapshotArgs.builder()
.description(name)
.ensRegionId("ch-zurich-1")
.snapshotName(name)
.diskId(disk.id())
.build());
}
}
Content copied to clipboard
configuration:
name:
type: string
default: terraform-example
resources:
disk:
type: alicloud:ens:Disk
properties:
category: cloud_efficiency
size: '20'
paymentType: PayAsYouGo
ensRegionId: ch-zurich-1
default:
type: alicloud:ens:Snapshot
properties:
description: ${name}
ensRegionId: ch-zurich-1
snapshotName: ${name}
diskId: ${disk.id}
Content copied to clipboard
Import
ENS Snapshot can be imported using the id, e.g.
$ pulumi import alicloud:ens/snapshot:Snapshot example <id>
Content copied to clipboard