Terraform modules to set up a the different parts for S3 based duply backups.
Contents:
- duply-bucket: primitive to create backup bucket
- duply-user: create an IAM backup user
- duply-bucket-iamuser: abstraction creating both the bucket and user in a single module.
Create the bucket to store the backups.
- [
customer
]: String(required): Name of the customer - [
project
]: String(optional): The name of the project, default "noproject" - [
environment
]: String(optional): The name of the environment, default "production"
- [
arn
]: String: The ARN of the S3 bucket to hold the backups.
module "backup_bucket" {
source = "github.com/skyscrapers/terraform-duply//duply-bucket"
customer = "my_customer"
project = "my_funky_app"
environment = "staging"
}
Create the backup user.
- [
customer
]: String(required): Name of the customer - [
arn
]: String(required): The ARN of the bucket that needs to be managed by the backup user.= - [
project
]: String(optional): The name of the project, default "" - [
environment
]: String(optional): The name of the environment, default "production"
- [
access_key
]: String: The AWS access key for the created backup user - [
secret_name
]: String: The name of the ELB
module "backup_user" {
source = "github.com/skyscrapers/terraform-duply//duply-user"
customer = "my_customer"
environment = "staging"
arn = "${aws_s3_bucket.backup.arn}"
}
Create the bucket and the user in a single go.
- [
customer
]: String(required): Name of the customer - [
project
]: String(optional): The name of the project, default "noproject" - [
environment
]: String(optional): The name of the environment, default "production"
- [
access_key
]: String: The AWS access key for the created backup user - [
secret_key
]: String: The AWS secret key for the created backup user - [
arn
]: String: The ARN of the S3 bucket to hold the backups.
module "backup_setup" {
source = "github.com/skyscrapers/terraform-duply//duply-bucket-iamuser"
customer = "my_customer"
project = "my_funky_app"
environment = "staging"
}