alicloud logo
Alibaba Cloud v3.37.0, May 15 23

alicloud.ecs.getAutoSnapshotPolicies

Explore with Pulumi AI

This data source provides the Ecs Auto Snapshot Policies of the current Alibaba Cloud user.

NOTE: Available in v1.117.0+.

Example Usage

Basic Usage

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

return await Deployment.RunAsync(() => 
{
    var example = AliCloud.Ecs.GetAutoSnapshotPolicies.Invoke(new()
    {
        Ids = new[]
        {
            "sp-bp14e66xxxxxxxx",
        },
        NameRegex = "tf-testAcc",
    });

    return new Dictionary<string, object?>
    {
        ["firstEcsAutoSnapshotPolicyId"] = example.Apply(getAutoSnapshotPoliciesResult => getAutoSnapshotPoliciesResult.Policies[0]?.Id),
    };
});
package main

import (
	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ecs.GetAutoSnapshotPolicies(ctx, &ecs.GetAutoSnapshotPoliciesArgs{
			Ids: []string{
				"sp-bp14e66xxxxxxxx",
			},
			NameRegex: pulumi.StringRef("tf-testAcc"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstEcsAutoSnapshotPolicyId", example.Policies[0].Id)
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.ecs.EcsFunctions;
import com.pulumi.alicloud.ecs.inputs.GetAutoSnapshotPoliciesArgs;
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 example = EcsFunctions.getAutoSnapshotPolicies(GetAutoSnapshotPoliciesArgs.builder()
            .ids("sp-bp14e66xxxxxxxx")
            .nameRegex("tf-testAcc")
            .build());

        ctx.export("firstEcsAutoSnapshotPolicyId", example.applyValue(getAutoSnapshotPoliciesResult -> getAutoSnapshotPoliciesResult.policies()[0].id()));
    }
}
import pulumi
import pulumi_alicloud as alicloud

example = alicloud.ecs.get_auto_snapshot_policies(ids=["sp-bp14e66xxxxxxxx"],
    name_regex="tf-testAcc")
pulumi.export("firstEcsAutoSnapshotPolicyId", example.policies[0].id)
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";

const example = alicloud.ecs.getAutoSnapshotPolicies({
    ids: ["sp-bp14e66xxxxxxxx"],
    nameRegex: "tf-testAcc",
});
export const firstEcsAutoSnapshotPolicyId = example.then(example => example.policies?.[0]?.id);
variables:
  example:
    fn::invoke:
      Function: alicloud:ecs:getAutoSnapshotPolicies
      Arguments:
        ids:
          - sp-bp14e66xxxxxxxx
        nameRegex: tf-testAcc
outputs:
  firstEcsAutoSnapshotPolicyId: ${example.policies[0].id}

Using getAutoSnapshotPolicies

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 getAutoSnapshotPolicies(args: GetAutoSnapshotPoliciesArgs, opts?: InvokeOptions): Promise<GetAutoSnapshotPoliciesResult>
function getAutoSnapshotPoliciesOutput(args: GetAutoSnapshotPoliciesOutputArgs, opts?: InvokeOptions): Output<GetAutoSnapshotPoliciesResult>
def get_auto_snapshot_policies(ids: Optional[Sequence[str]] = None,
                               name_regex: Optional[str] = None,
                               output_file: Optional[str] = None,
                               status: Optional[str] = None,
                               tags: Optional[Mapping[str, Any]] = None,
                               opts: Optional[InvokeOptions] = None) -> GetAutoSnapshotPoliciesResult
def get_auto_snapshot_policies_output(ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                               name_regex: Optional[pulumi.Input[str]] = None,
                               output_file: Optional[pulumi.Input[str]] = None,
                               status: Optional[pulumi.Input[str]] = None,
                               tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
                               opts: Optional[InvokeOptions] = None) -> Output[GetAutoSnapshotPoliciesResult]
func GetAutoSnapshotPolicies(ctx *Context, args *GetAutoSnapshotPoliciesArgs, opts ...InvokeOption) (*GetAutoSnapshotPoliciesResult, error)
func GetAutoSnapshotPoliciesOutput(ctx *Context, args *GetAutoSnapshotPoliciesOutputArgs, opts ...InvokeOption) GetAutoSnapshotPoliciesResultOutput

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

public static class GetAutoSnapshotPolicies 
{
    public static Task<GetAutoSnapshotPoliciesResult> InvokeAsync(GetAutoSnapshotPoliciesArgs args, InvokeOptions? opts = null)
    public static Output<GetAutoSnapshotPoliciesResult> Invoke(GetAutoSnapshotPoliciesInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetAutoSnapshotPoliciesResult> getAutoSnapshotPolicies(GetAutoSnapshotPoliciesArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
  function: alicloud:ecs/getAutoSnapshotPolicies:getAutoSnapshotPolicies
  arguments:
    # arguments dictionary

The following arguments are supported:

Ids List<string>

A list of Auto Snapshot Policy IDs.

NameRegex string

A regex string to filter results by Auto Snapshot Policy name.

OutputFile string

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

Status string

The status of Auto Snapshot Policy.

Tags Dictionary<string, object>

A mapping of tags to assign to the resource.

Ids []string

A list of Auto Snapshot Policy IDs.

NameRegex string

A regex string to filter results by Auto Snapshot Policy name.

OutputFile string

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

Status string

The status of Auto Snapshot Policy.

Tags map[string]interface{}

A mapping of tags to assign to the resource.

ids List<String>

A list of Auto Snapshot Policy IDs.

nameRegex String

A regex string to filter results by Auto Snapshot Policy name.

outputFile String

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

status String

The status of Auto Snapshot Policy.

tags Map<String,Object>

A mapping of tags to assign to the resource.

ids string[]

A list of Auto Snapshot Policy IDs.

nameRegex string

A regex string to filter results by Auto Snapshot Policy name.

outputFile string

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

status string

The status of Auto Snapshot Policy.

tags {[key: string]: any}

A mapping of tags to assign to the resource.

ids Sequence[str]

A list of Auto Snapshot Policy IDs.

name_regex str

A regex string to filter results by Auto Snapshot Policy name.

output_file str

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

status str

The status of Auto Snapshot Policy.

tags Mapping[str, Any]

A mapping of tags to assign to the resource.

ids List<String>

A list of Auto Snapshot Policy IDs.

nameRegex String

A regex string to filter results by Auto Snapshot Policy name.

outputFile String

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

status String

The status of Auto Snapshot Policy.

tags Map<Any>

A mapping of tags to assign to the resource.

getAutoSnapshotPolicies Result

The following output properties are available:

Id string

The provider-assigned unique ID for this managed resource.

Ids List<string>
Names List<string>
Policies List<Pulumi.AliCloud.Ecs.Outputs.GetAutoSnapshotPoliciesPolicy>
NameRegex string
OutputFile string
Status string
Tags Dictionary<string, object>
Id string

The provider-assigned unique ID for this managed resource.

Ids []string
Names []string
Policies []GetAutoSnapshotPoliciesPolicy
NameRegex string
OutputFile string
Status string
Tags map[string]interface{}
id String

The provider-assigned unique ID for this managed resource.

ids List<String>
names List<String>
policies List<GetAutoSnapshotPoliciesPolicy>
nameRegex String
outputFile String
status String
tags Map<String,Object>
id string

The provider-assigned unique ID for this managed resource.

ids string[]
names string[]
policies GetAutoSnapshotPoliciesPolicy[]
nameRegex string
outputFile string
status string
tags {[key: string]: any}
id str

The provider-assigned unique ID for this managed resource.

ids Sequence[str]
names Sequence[str]
policies Sequence[GetAutoSnapshotPoliciesPolicy]
name_regex str
output_file str
status str
tags Mapping[str, Any]
id String

The provider-assigned unique ID for this managed resource.

ids List<String>
names List<String>
policies List<Property Map>
nameRegex String
outputFile String
status String
tags Map<Any>

Supporting Types

GetAutoSnapshotPoliciesPolicy

AutoSnapshotPolicyId string

The ID of the Auto Snapshot Policy.

CopiedSnapshotsRetentionDays int

The retention period of the snapshot copied across regions.

DiskNums int

The number of disks to which the automatic snapshot policy is applied.

EnableCrossRegionCopy bool

Specifies whether to enable the system to automatically copy snapshots across regions.

Id string

The ID of the Auto Snapshot Policy.

Name string

The snapshot policy name..

RepeatWeekdays List<string>

The automatic snapshot repetition dates.

RetentionDays int

The snapshot retention time, and the unit of measurement is day.

Status string

The status of Auto Snapshot Policy.

Tags Dictionary<string, object>

A mapping of tags to assign to the resource.

TargetCopyRegions List<string>

The destination region to which the snapshot is copied.

TimePoints List<string>

The automatic snapshot creation schedule, and the unit of measurement is hour.

VolumeNums int

The number of extended volumes on which this policy is enabled.

AutoSnapshotPolicyId string

The ID of the Auto Snapshot Policy.

CopiedSnapshotsRetentionDays int

The retention period of the snapshot copied across regions.

DiskNums int

The number of disks to which the automatic snapshot policy is applied.

EnableCrossRegionCopy bool

Specifies whether to enable the system to automatically copy snapshots across regions.

Id string

The ID of the Auto Snapshot Policy.

Name string

The snapshot policy name..

RepeatWeekdays []string

The automatic snapshot repetition dates.

RetentionDays int

The snapshot retention time, and the unit of measurement is day.

Status string

The status of Auto Snapshot Policy.

Tags map[string]interface{}

A mapping of tags to assign to the resource.

TargetCopyRegions []string

The destination region to which the snapshot is copied.

TimePoints []string

The automatic snapshot creation schedule, and the unit of measurement is hour.

VolumeNums int

The number of extended volumes on which this policy is enabled.

autoSnapshotPolicyId String

The ID of the Auto Snapshot Policy.

copiedSnapshotsRetentionDays Integer

The retention period of the snapshot copied across regions.

diskNums Integer

The number of disks to which the automatic snapshot policy is applied.

enableCrossRegionCopy Boolean

Specifies whether to enable the system to automatically copy snapshots across regions.

id String

The ID of the Auto Snapshot Policy.

name String

The snapshot policy name..

repeatWeekdays List<String>

The automatic snapshot repetition dates.

retentionDays Integer

The snapshot retention time, and the unit of measurement is day.

status String

The status of Auto Snapshot Policy.

tags Map<String,Object>

A mapping of tags to assign to the resource.

targetCopyRegions List<String>

The destination region to which the snapshot is copied.

timePoints List<String>

The automatic snapshot creation schedule, and the unit of measurement is hour.

volumeNums Integer

The number of extended volumes on which this policy is enabled.

autoSnapshotPolicyId string

The ID of the Auto Snapshot Policy.

copiedSnapshotsRetentionDays number

The retention period of the snapshot copied across regions.

diskNums number

The number of disks to which the automatic snapshot policy is applied.

enableCrossRegionCopy boolean

Specifies whether to enable the system to automatically copy snapshots across regions.

id string

The ID of the Auto Snapshot Policy.

name string

The snapshot policy name..

repeatWeekdays string[]

The automatic snapshot repetition dates.

retentionDays number

The snapshot retention time, and the unit of measurement is day.

status string

The status of Auto Snapshot Policy.

tags {[key: string]: any}

A mapping of tags to assign to the resource.

targetCopyRegions string[]

The destination region to which the snapshot is copied.

timePoints string[]

The automatic snapshot creation schedule, and the unit of measurement is hour.

volumeNums number

The number of extended volumes on which this policy is enabled.

auto_snapshot_policy_id str

The ID of the Auto Snapshot Policy.

copied_snapshots_retention_days int

The retention period of the snapshot copied across regions.

disk_nums int

The number of disks to which the automatic snapshot policy is applied.

enable_cross_region_copy bool

Specifies whether to enable the system to automatically copy snapshots across regions.

id str

The ID of the Auto Snapshot Policy.

name str

The snapshot policy name..

repeat_weekdays Sequence[str]

The automatic snapshot repetition dates.

retention_days int

The snapshot retention time, and the unit of measurement is day.

status str

The status of Auto Snapshot Policy.

tags Mapping[str, Any]

A mapping of tags to assign to the resource.

target_copy_regions Sequence[str]

The destination region to which the snapshot is copied.

time_points Sequence[str]

The automatic snapshot creation schedule, and the unit of measurement is hour.

volume_nums int

The number of extended volumes on which this policy is enabled.

autoSnapshotPolicyId String

The ID of the Auto Snapshot Policy.

copiedSnapshotsRetentionDays Number

The retention period of the snapshot copied across regions.

diskNums Number

The number of disks to which the automatic snapshot policy is applied.

enableCrossRegionCopy Boolean

Specifies whether to enable the system to automatically copy snapshots across regions.

id String

The ID of the Auto Snapshot Policy.

name String

The snapshot policy name..

repeatWeekdays List<String>

The automatic snapshot repetition dates.

retentionDays Number

The snapshot retention time, and the unit of measurement is day.

status String

The status of Auto Snapshot Policy.

tags Map<Any>

A mapping of tags to assign to the resource.

targetCopyRegions List<String>

The destination region to which the snapshot is copied.

timePoints List<String>

The automatic snapshot creation schedule, and the unit of measurement is hour.

volumeNums Number

The number of extended volumes on which this policy is enabled.

Package Details

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

This Pulumi package is based on the alicloud Terraform Provider.