Module to manage AWS Backup with Terraform.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Christophe van de Kerchove 873d15d08c
breaking: terraform 0.12 upgrade & best practices
4 mesi fa
examples breaking: terraform 0.12 upgrade & best practices 4 mesi fa
.gitignore breaking: terraform 0.12 upgrade & best practices 4 mesi fa
.pre-commit-config.yaml refactor: fixes style 6 mesi fa
AUTHORS breaking: terraform 0.12 upgrade & best practices 4 mesi fa
CHANGELOG.md breaking: terraform 0.12 upgrade & best practices 4 mesi fa
Jenkinsfile breaking: terraform 0.12 upgrade & best practices 4 mesi fa
README.md breaking: terraform 0.12 upgrade & best practices 4 mesi fa
main.tf breaking: terraform 0.12 upgrade & best practices 4 mesi fa
outputs.tf breaking: terraform 0.12 upgrade & best practices 4 mesi fa
variables.tf breaking: terraform 0.12 upgrade & best practices 4 mesi fa
versions.tf breaking: terraform 0.12 upgrade & best practices 4 mesi fa

README.md

Terraform Module AWS Backup

Module to manage AWS Backup with Terraform.

Limitations

  • This module can only create one optional vault and/or one optional plan and/or one optional selection by tags and/or by ressources.

Inputs

Name Description Type Default Required
enabled Whether or not to enable this entire module or not. string "true" no
plan_create Whether or not to create a plan. string "true" no
plan_name Name of the plan. string "backup-plan" no
plan_rule_completion_window The amount of time AWS Backup attempts a backup before canceling the job and returning an error for the plan. string "" no
plan_rule_lifecycle_cold_storage_after Specifies the number of days after creation that a recovery point is moved to cold storage. string "" no
plan_rule_lifecycle_delete_after Specifies the number of days after creation that a recovery point is deleted. Must be 90 days greater than cold_storage_after. string "" no
plan_rule_name Name of the rule for the plan. string "backup-rule" no
plan_rule_recovery_point_tags Metadata that you can assign to help organize the resources that you create for the plan. map {} no
plan_rule_schedule A CRON expression specifying when to initiates a backup job for the plan. string "" no
plan_rule_start_window The amount of time in minutes before beginning a backup for the plan. string "" no
plan_tags Tags for the Backup plan. Will be merged with tags. map {} no
selection_by_ressources Whether or not to create a selection by resources. string "false" no
selection_by_tags Whether or not to create a selection by tags. string "false" no
selection_create Whether or not to create a selection. string "true" no
selection_iam_role_name Name of the IAM role that AWS Backup uses to authenticate when restoring and backing up the target resource. string "BackupRole" no
selection_plan_id The backup plan ID to be associated with the selection of resources. Must be specified if plan_create is false. string "" no
selection_resource_name Name of the selection by resource. string "selection-by-resource" no
selection_resources An array of strings that either contain Amazon Resource Names (ARNs) or match patterns of resources to assign to a backup plan. list [] no
selection_role_arn ARN of the IAM role that AWS Backup uses to authenticate when restoring and backing up the target resource. Must be specified if selection_role_create is false. string "" no
selection_role_create Whether or not to create a role for selection. string "true" no
selection_tag_key The key in a key-value pair of the selection by tags. string "Backup" no
selection_tag_name Name of the selection by tags. string "selection-by-tag" no
selection_tag_type An operation, such as ‘StringEquals’, that is applied to a key-value pair used to filter resources in a selection. string "STRINGEQUALS" no
selection_tag_value The value in a key-value pair of the selection by tags. string "1" no
tags Tags to be shared among all resources of this module. map {} no
vault_create Whether or not to create a vault for AWS Backup. string "true" no
vault_kms_key_alias_name Alias for the KMS key of the Backup vault. Will be merged with tags. string "" no
vault_kms_key_arn ARN of the KMS key to use for the vault for AWS Backup. Do not specify if you want to let the module create it own key. string "null" no
vault_kms_key_create Whether or not to create a KMS key for the vault for AWS Backup. string "true" no
vault_kms_key_name Name of the KMS key to use for the vault for AWS Backup. string "" no
vault_kms_tags Tags for the KMS key of the Backup vault. Will be merged with tags. map {} no
vault_name Name of the backup vault to use. string "default" no
vault_tags Tags for the Backup vault. Will be merged with tags. map {} no

Outputs

Name Description
plan_arns ARNs of the backup plans.
plan_iam_role_arn ARN of the role for the backup plans.
plan_iam_role_name Name of the role for the backup plans.
plan_iam_role_unique_id Stable and unique string identifying the role for the backup plans.
plan_versions Unique, randomly generated, Unicode, UTF-8 encoded strings that serves as the version ID of the backup plans.
selection_resources_ids Backup Selection identifiers (by ressources).
selection_tag_ids Backup Selection identifiers (by tags).
vault_arn ARN of the vault.
vault_id The name of the vault.
vault_kms_key_alias_arn ARN of the KMS key alias for the backup vault.
vault_kms_key_arn ARN of the KMS key for the backup vault.
vault_kms_key_id Globally unique identifier of the KMS key for the backup vault.
vault_recovery_points The number of recovery points that are stored in a backup vault.