accessKeyId

The AWS Access Key ID.

type

string

default

{
  accessKeyId = "";
}

copyTags

Copy all user-defined tags on a source volume to snapshots of the volume created by this policy.

type

boolean

default

{
  copyTags = true;
}

description

A description of the lifecycle policy.

type

string

default

{
  description = "lifecycle policy created by nixops.";
}

dlmName

data lifecycle manager name.

type

string

default

{
  dlmName = "nixops-{uuid}-{name}";
}

excludeBootVolume

When executing an EBS Snapshot Management – Instance policy, execute all CreateSnapshots calls with the excludeBootVolume set to the supplied field. Defaults to false. Only valid for EBS Snapshot Management – Instance policies.

type

boolean

default

{
  excludeBootVolume = true;
}

executionRole

IAM role used to run the operations specified by the lifecycle policy.

type

string

default

{
  executionRole = "AWSDataLifecycleManagerDefaultRole";
}

policyId

The identifier of the lifecycle policy. This is set by NixOps

type

string

default

{
  policyId = "";
}

region

AWS region.

type

string

resourceTypes

The resource type.

type

one of "instance", "volume"

default

{
  resourceTypes = "instance";
}

retainRule

The number of snapshots to keep for each volume, up to a maximum of 1000.

type

signed integer

default

{
  retainRule = 1000;
}

ruleInterval

The interval between snapshots. The supported values are 2, 3, 4, 6, 8, 12, and 24.

type

one of 2, 3, 4, 6, 8, 12, 24

default

{
  ruleInterval = 12;
}

ruleIntervalUnit

The interval unit.

type

value "hours" (singular enum)

default

{
  ruleIntervalUnit = "hours";
}

ruleTime

The time, in UTC, to start the operation. The supported format is hh:mm. The operation occurs within a one-hour window following the specified time.

type

string

default

{
  ruleTime = "09:00";
}

tagsToAdd

The tags to apply to policy-created resources. These user-defined tags are in addition to the AWS-added lifecycle tags.

type

attribute set of string

example

{
  tagsToAdd = {
    foo = "bar";
    xyzzy = "bla";
  };
}

default

{
  tagsToAdd = {};
}

targetTags

The single tag that identifies targeted resources for this policy.

type

attribute set of string

example

{
  targetTags = {
    foo = "bar";
    xyzzy = "bla";
  };
}

default

{
  targetTags = {};
}