Awesome
terraform-aws-superset-docker
Features
This module sets up Apache Superset with ansible which configures a node to run docker-compose.
Terraform Versions
For Terraform v0.12.0+
Usage
variable "private_key_path" {}
variable "public_key_path" {}
module "this" {
source = "github.com/insight-infrastructure/terraform-aws-superset-docker"
private_key_path = var.private_key_path
public_key_path = var.public_key_path
}
Examples
Known Issues
No issue is creating limit on this module.
<!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK -->Providers
Name | Version |
---|---|
aws | n/a |
Inputs
Name | Description | Type | Default | Required |
---|---|---|---|---|
additional_policy_arns | List of additional policy arns | list(string) | [] | no |
additional_security_group_ids | List of security groups | list(string) | [] | no |
ami | AMI to use as base image - blank for ubuntu | string | "" | no |
bastion_ip | Optional IP for bastion - blank for no bastion | string | "" | no |
bastion_user | Optional bastion user - blank for no bastion | string | "" | no |
certbot_admin_email | Email to register SSL cert with | string | "" | no |
cloudwatch_enable | Enable CW | bool | false | no |
create | Boolean to create resources or not | bool | true | no |
create_dns | Bool to create ssl cert and nginx proxy | bool | true | no |
create_iam | Bool to create iam role | bool | false | no |
create_sg | Bool for create security group | bool | true | no |
domain_name | The domain - example.com. Blank for no ssl / nginx | string | "" | no |
enable_superset_ssl | Bool to enable SSL | bool | true | no |
hostname | The hostname - ie hostname.example.com - blank for example.com | string | "" | no |
instance_type | Instance type | string | "t3.small" | no |
key_name | The key pair to import - leave blank to generate new keypair from pub/priv ssh key path | string | "" | no |
logging_bucket_name | Name of bucket for logs - blank for logs-<account-id> | string | "" | no |
logs_bucket_enable | Create bucket to put logs | bool | false | no |
monitoring | Boolean for cloudwatch | bool | false | no |
name | The name for the label | string | "superset" | no |
playbook_vars | Additional playbook vars | map(string) | {} | no |
private_key_path | The path to the private ssh key | string | n/a | yes |
private_port_cidrs | List of CIDR blocks for private ports | list(string) | <pre>[<br> "172.31.0.0/16"<br>]</pre> | no |
private_ports | List of publicly open ports | list(number) | [] | no |
public_key_path | The path to the public ssh key | string | n/a | yes |
public_ports | List of publicly open ports | list(number) | <pre>[<br> 22,<br> 80,<br> 443,<br> 8088<br>]</pre> | no |
root_iops | n/a | string | n/a | yes |
root_volume_size | Root volume size | number | 8 | no |
root_volume_type | n/a | string | "gp2" | no |
subnet_id | The id of the subnet | string | "" | no |
suffix | Suffix to attach to name | string | "" | no |
superset_database_import_yaml_path | The path to database import file | string | "" | no |
superset_email | The superset email | string | "recovery@email.com" | no |
superset_env_file_path | Path to .env file for deployment | string | "" | no |
superset_firstname | The superset firstname | string | "ICON" | no |
superset_lastname | The superset lastname | string | "Todamoon" | no |
superset_password | The superset password | string | "changemenow" | no |
superset_username | The superset username | string | "superset" | no |
tags | Map of tags | map(string) | {} | no |
vpc_id | Custom vpc id - leave blank for deault | string | "" | no |
Outputs
Name | Description |
---|---|
fqdn | n/a |
instance_id | n/a |
instance_type | n/a |
key_name | n/a |
public_ip | n/a |
uri | n/a |
Testing
This module has been packaged with terratest tests
To run them:
- Install Go
- Run
make test-init
from the root of this repo - Run
make test
again from root
Authors
Module managed by insight-infrastructure
Credits
License
Apache 2 Licensed. See LICENSE for full details.