Table Of Contents

Feedback

User Guide

First time using the AWS CLI? See the User Guide for help getting started.

[ aws . dlm ]

create-lifecycle-policy

Description

Creates a policy to manage the lifecycle of the specified AWS resources. You can create up to 100 lifecycle policies.

See also: AWS API Documentation

See 'aws help' for descriptions of global parameters.

Synopsis

  create-lifecycle-policy
--execution-role-arn <value>
--description <value>
--state <value>
--policy-details <value>
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

Options

--execution-role-arn (string)

The Amazon Resource Name (ARN) of the IAM role used to run the operations specified by the lifecycle policy.

--description (string)

A description of the lifecycle policy. The characters ^[0-9A-Za-z _-]+$ are supported.

--state (string)

The desired activation state of the lifecycle policy after creation.

Possible values:

  • ENABLED
  • DISABLED

--policy-details (structure)

The configuration details of the lifecycle policy.

Target tags cannot be re-used across lifecycle policies.

JSON Syntax:

{
  "ResourceTypes": ["VOLUME", ...],
  "TargetTags": [
    {
      "Key": "string",
      "Value": "string"
    }
    ...
  ],
  "Schedules": [
    {
      "Name": "string",
      "CopyTags": true|false,
      "TagsToAdd": [
        {
          "Key": "string",
          "Value": "string"
        }
        ...
      ],
      "CreateRule": {
        "Interval": integer,
        "IntervalUnit": "HOURS",
        "Times": ["string", ...]
      },
      "RetainRule": {
        "Count": integer
      }
    }
    ...
  ]
}

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See 'aws help' for descriptions of global parameters.

Examples

To create a lifecycle policy

The following example creates a lifecycle policy that creates a daily snapshot of volumes with the specified target tags at the specified time. The snapshot has the tags specified by TagsToAdd. If creating a new snapshot exceeds the specified maximum count, the oldest snapshot is deleted.:

aws dlm create-lifecycle-policy --description "My first policy" --state ENABLED --execution-role-arn arn:aws:iam::12345678910:role/AWSDataLifecycleManagerDefaultRole --policy-details file://policyDetails.json

The following is an example of the policyDetails.json file.:

{
   "ResourceTypes": [
      "VOLUME"
   ],
   "TargetTags": [
      {
         "Key": "costcenter",
         "Value": "115"
      }
   ],
   "Schedules":[
      {
         "Name": "DailySnapshots",
         "TagsToAdd": [
            {
               "Key": "type",
               "Value": "myDailySnapshot"
            }
         ],
         "CreateRule": {
            "Interval": 24,
            "IntervalUnit": "HOURS",
            "Times": [
               "03:00"
            ]
         },
         "RetainRule": {
            "Count":5
         }
      }
   ]
}

The following is example output.:

{
   "PolicyId": "policy-0123456789abcdef0"
}

Output

PolicyId -> (string)

The identifier of the lifecycle policy.