Name | Version |
---|---|
terraform | ~> 1.5 |
aws | ~> 5.11 |
cloudinit | ~> 2.3 |
null | ~> 3.2 |
random | ~> 3.6 |
tls | ~> 4.0 |
Name | Version |
---|---|
aws | ~> 5.11 |
aws.dns | ~> 5.11 |
random | ~> 3.6 |
tls | ~> 4.0 |
Name | Source | Version |
---|---|---|
bookstack | registry.infrahouse.com/infrahouse/website-pod/aws | 4.0.0 |
bookstack-userdata | registry.infrahouse.com/infrahouse/cloud-init/aws | 1.12.4 |
bookstack_app_key | registry.infrahouse.com/infrahouse/secret/aws | 0.5.0 |
db_user | registry.infrahouse.com/infrahouse/secret/aws | 0.5.0 |
ses_smtp_password | registry.infrahouse.com/infrahouse/secret/aws | 0.5.0 |
Name | Description | Type | Default | Required |
---|---|---|---|---|
asg_ami | Image for EC2 instances | string |
null |
no |
asg_health_check_grace_period | ASG will wait up to this number of minutes for instance to become healthy | number |
600 |
no |
asg_max_size | Maximum number of instances in ASG | number |
null |
no |
asg_min_size | Minimum number of instances in ASG | number |
null |
no |
backend_subnet_ids | List of subnet ids where the webserver and database instances will be created | list(string) |
n/a | yes |
db_instance_type | Instance type to run the database instances | string |
"db.t3.micro" |
no |
dns_a_records | A list of A records the BookStack application will be accessible at. E.g. ["wiki"] or ["bookstack", "docs"]. By default, it will be [var.service_name]. | list(string) |
null |
no |
environment | Name of environment. | string |
"development" |
no |
extra_files | Additional files to create on an instance. | list(object({ |
[] |
no |
extra_repos | Additional APT repositories to configure on an instance. | map(object({ |
{} |
no |
google_oauth_client_secret | AWS secretsmanager secret name with a Google Oauth 'client id' and 'client secret'. | string |
n/a | yes |
instance_type | Instance type to run the webserver instances | string |
"t3.micro" |
no |
internet_gateway_id | Not used, but AWS Internet Gateway must be present. Ensure by passing its id. | string |
n/a | yes |
key_pair_name | SSH keypair name to be deployed in EC2 instances | string |
null |
no |
lb_subnet_ids | List of subnet ids where the load balancer will be created | list(string) |
n/a | yes |
packages | List of packages to install when the instances bootstraps. | list(string) |
[] |
no |
puppet_debug_logging | Enable debug logging if true. | bool |
false |
no |
puppet_hiera_config_path | Path to hiera configuration file. | string |
"{root_directory}/environments/{environment}/hiera.yaml" |
no |
puppet_module_path | Path to common puppet modules. | string |
"{root_directory}/modules" |
no |
puppet_root_directory | Path where the puppet code is hosted. | string |
"/opt/puppet-code" |
no |
service_name | DNS hostname for the service. It's also used to name some resources like EC2 instances. | string |
"bookstack" |
no |
smtp_credentials_secret | AWS secret name with SMTP credentials. The secret must contain a JSON with user and password keys. | string |
null |
no |
ssh_cidr_block | CIDR range that is allowed to SSH into the backend instances. Format is a.b.c.d/. | string |
null |
no |
storage_encryption_key_arn | KMS key ARN to encrypt RDS instance storage. | string |
null |
no |
ubuntu_codename | Ubuntu version to use for the elasticsearch node | string |
"jammy" |
no |
zone_id | Domain name zone ID where the website will be available | string |
n/a | yes |
Name | Description |
---|---|
bookstack_instance_role_arn | IAM role ARN assigned to bookstack EC2 instances. |
bookstack_urls | List of URLs where bookstack is available. |