1. Packages
  2. Alibaba Cloud
  3. API Docs
  4. ecs
  5. getAutoSnapshotPolicies
Alibaba Cloud v3.57.0 published on Saturday, Jun 15, 2024 by Pulumi

alicloud.ecs.getAutoSnapshotPolicies

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.57.0 published on Saturday, Jun 15, 2024 by Pulumi

    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

    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);
    
    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)
    
    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
    	})
    }
    
    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 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()));
        }
    }
    
    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. Valid Values: Expire, Normal.
    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. Valid Values: Expire, Normal.
    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. Valid Values: Expire, Normal.
    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. Valid Values: Expire, Normal.
    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. Valid Values: Expire, Normal.
    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. Valid Values: Expire, Normal.
    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.
    alicloud logo
    Alibaba Cloud v3.57.0 published on Saturday, Jun 15, 2024 by Pulumi