An open API service indexing awesome lists of open source software.

https://github.com/philips-labs/terraform-hsdp-apache-superset

Module to deploy Apache Superset on HSDP Container Host
https://github.com/philips-labs/terraform-hsdp-apache-superset

apache-superset container-host hsdp terraform terraform-module

Last synced: 5 months ago
JSON representation

Module to deploy Apache Superset on HSDP Container Host

Awesome Lists containing this project

README

          

# HSDP Apache Superset module

This module deploys Apache Superset on Container Host. It also deploys a Caddy based reverse proxy on Cloud foundry so you can access
the Apache Superset UI.

## Disclaimer

> [!Important]
> This repository is managed as Philips Inner-source / Open-source.
> This repository is NOT endorsed or supported by HSSA&P or I&S Cloud Operations.
> You are expected to self-support or raise tickets on the Github project and NOT raise tickets in HSP ServiceNow.

## Requirements

| Name | Version |
|------|---------|
| [hsdp](#requirement\_hsdp) | >= 0.26.3 |

## Providers

| Name | Version |
|------|---------|
| [cloudfoundry](#provider\_cloudfoundry) | 0.14.2 |
| [hsdp](#provider\_hsdp) | 0.26.3 |
| [random](#provider\_random) | 3.1.0 |

## Modules

| Name | Source | Version |
|------|--------|---------|
| [postgres](#module\_postgres) | philips-labs/postgres-service/hsdp | n/a |
| [redis](#module\_redis) | philips-labs/redis-service/hsdp | 0.2.0 |

## Resources

| Name | Type |
|------|------|
| [cloudfoundry_app.superset_proxy](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/app) | resource |
| [cloudfoundry_route.superset_proxy](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/route) | resource |
| [hsdp_container_host.superset](https://registry.terraform.io/providers/philips-software/hsdp/latest/docs/resources/container_host) | resource |
| [random_id.id](https://registry.terraform.io/providers/random/latest/docs/resources/id) | resource |
| [cloudfoundry_domain.domain](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/domain) | data source |
| [cloudfoundry_org.org](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/org) | data source |
| [cloudfoundry_service.db](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/service) | data source |
| [cloudfoundry_service.redis](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/service) | data source |
| [cloudfoundry_space.space](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/space) | data source |
| [hsdp_config.cf](https://registry.terraform.io/providers/philips-software/hsdp/latest/docs/data-sources/config) | data source |
| [hsdp_config.logging](https://registry.terraform.io/providers/philips-software/hsdp/latest/docs/data-sources/config) | data source |

## Inputs

| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [agent](#input\_agent) | Use SSH agent for authentication | `bool` | `false` | no |
| [caddy\_image](#input\_caddy\_image) | Caddy server image to use | `string` | `"caddy:2.4.5"` | no |
| [cartel\_secret](#input\_cartel\_secret) | The Cartel secret to use for autoscaling | `string` | `""` | no |
| [cartel\_token](#input\_cartel\_token) | The Cartel token to use for autoscaling | `string` | `""` | no |
| [docker\_password](#input\_docker\_password) | Docker registry password | `string` | `""` | no |
| [docker\_username](#input\_docker\_username) | Docker registry username | `string` | `""` | no |
| [fluent\_bit\_image](#input\_fluent\_bit\_image) | Fluent-bit image | `string` | `"philipssoftware/fluent-bit-out-hsdp:latest"` | no |
| [hsdp\_custom\_field](#input\_hsdp\_custom\_field) | Post structured JSON message to HSDP Logging custom field | `string` | `"true"` | no |
| [hsdp\_environment](#input\_hsdp\_environment) | The HSDP environment of the deployment | `string` | `"client-test"` | no |
| [hsdp\_product\_key](#input\_hsdp\_product\_key) | HSDP Logging product key | `string` | `""` | no |
| [hsdp\_region](#input\_hsdp\_region) | The HSDP region of the deployment | `string` | `"us-east"` | no |
| [hsdp\_secret\_key](#input\_hsdp\_secret\_key) | HSDP Logging secret key | `string` | `""` | no |
| [hsdp\_shared\_key](#input\_hsdp\_shared\_key) | HSDP Logging shared key | `string` | `""` | no |
| [instance\_type](#input\_instance\_type) | The instance type to use | `string` | `"t2.medium"` | no |
| [name\_postfix](#input\_name\_postfix) | The postfix string to append to the hostname, prevents namespace clashes | `string` | `""` | no |
| [org\_name](#input\_org\_name) | Cloudfoundry ORG name to use for reverse proxy | `string` | n/a | yes |
| [postgres\_plan](#input\_postgres\_plan) | The HSDP-RDS PostgreSQL plan to use | `string` | `"postgres-medium-dev"` | no |
| [private\_key](#input\_private\_key) | Private key for SSH access (should not have a passphrase) | `string` | `""` | no |
| [redis\_plan](#input\_redis\_plan) | The Redis plan to use | `string` | `"redis-standalone"` | no |
| [space\_name](#input\_space\_name) | Cloudfoundry SPACE name to use for reverse proxy | `string` | n/a | yes |
| [superset\_image](#input\_superset\_image) | The Temporal server image to use | `string` | `"apache/superset:latest-dev"` | no |
| [user](#input\_user) | LDAP user to use for connections | `string` | n/a | yes |
| [user\_groups](#input\_user\_groups) | User groups to assign to cluster | `list(string)` | n/a | yes |
| [volume\_size](#input\_volume\_size) | The volume size to use in GB | `number` | `50` | no |
| [worker\_instance\_type](#input\_worker\_instance\_type) | Instance type of worker nodes | `string` | `"m5.xlarge"` | no |
| [workers](#input\_workers) | Number of worker nodes to spin up | `number` | `1` | no |

## Outputs

| Name | Description |
|------|-------------|
| [superset\_id](#output\_superset\_id) | Server ID of Superset |
| [superset\_ip](#output\_superset\_ip) | Private IP address of Superset server |
| [superset\_proxy\_endpoint](#output\_superset\_proxy\_endpoint) | URL of the Superset proxy |

# Contact / Getting help

Please post your questions on the HSDP Slack `#terraform` channel

# License

License is MIT

## Requirements

| Name | Version |
|------|---------|
| [hsdp](#requirement\_hsdp) | >= 0.26.3 |
| [ssh](#requirement\_ssh) | >= 2.1.0 |

## Providers

| Name | Version |
|------|---------|
| [cloudfoundry](#provider\_cloudfoundry) | 0.14.2 |
| [hsdp](#provider\_hsdp) | 0.26.3 |
| [random](#provider\_random) | 3.1.0 |
| [ssh](#provider\_ssh) | 2.1.0 |

## Modules

| Name | Source | Version |
|------|--------|---------|
| [postgres](#module\_postgres) | philips-labs/postgres-service/hsdp | n/a |
| [redis](#module\_redis) | philips-labs/redis-service/hsdp | 0.2.0 |

## Resources

| Name | Type |
|------|------|
| [cloudfoundry_app.superset_proxy](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/app) | resource |
| [cloudfoundry_route.superset_proxy](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/resources/route) | resource |
| [hsdp_container_host.superset](https://registry.terraform.io/providers/philips-software/hsdp/latest/docs/resources/container_host) | resource |
| [random_id.id](https://registry.terraform.io/providers/random/latest/docs/resources/id) | resource |
| [ssh_resource.server](https://registry.terraform.io/providers/loafoe/ssh/latest/docs/resources/resource) | resource |
| [ssh_resource.server_volumes](https://registry.terraform.io/providers/loafoe/ssh/latest/docs/resources/resource) | resource |
| [ssh_resource.worker](https://registry.terraform.io/providers/loafoe/ssh/latest/docs/resources/resource) | resource |
| [cloudfoundry_domain.domain](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/domain) | data source |
| [cloudfoundry_org.org](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/org) | data source |
| [cloudfoundry_service.db](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/service) | data source |
| [cloudfoundry_service.redis](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/service) | data source |
| [cloudfoundry_space.space](https://registry.terraform.io/providers/cloudfoundry-community/cloudfoundry/latest/docs/data-sources/space) | data source |
| [hsdp_config.cf](https://registry.terraform.io/providers/philips-software/hsdp/latest/docs/data-sources/config) | data source |
| [hsdp_config.logging](https://registry.terraform.io/providers/philips-software/hsdp/latest/docs/data-sources/config) | data source |

## Inputs

| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [agent](#input\_agent) | Use SSH agent for authentication | `bool` | `false` | no |
| [caddy\_image](#input\_caddy\_image) | Caddy server image to use | `string` | `"caddy:2.4.5"` | no |
| [cartel\_secret](#input\_cartel\_secret) | The Cartel secret to use for autoscaling | `string` | `""` | no |
| [cartel\_token](#input\_cartel\_token) | The Cartel token to use for autoscaling | `string` | `""` | no |
| [docker\_password](#input\_docker\_password) | Docker registry password | `string` | `""` | no |
| [docker\_username](#input\_docker\_username) | Docker registry username | `string` | `""` | no |
| [fluent\_bit\_image](#input\_fluent\_bit\_image) | Fluent-bit image | `string` | `"philipssoftware/fluent-bit-out-hsdp:latest"` | no |
| [hsdp\_custom\_field](#input\_hsdp\_custom\_field) | Post structured JSON message to HSDP Logging custom field | `string` | `"true"` | no |
| [hsdp\_environment](#input\_hsdp\_environment) | The HSDP environment of the deployment | `string` | `"client-test"` | no |
| [hsdp\_product\_key](#input\_hsdp\_product\_key) | HSDP Logging product key | `string` | `""` | no |
| [hsdp\_region](#input\_hsdp\_region) | The HSDP region of the deployment | `string` | `"us-east"` | no |
| [hsdp\_secret\_key](#input\_hsdp\_secret\_key) | HSDP Logging secret key | `string` | `""` | no |
| [hsdp\_shared\_key](#input\_hsdp\_shared\_key) | HSDP Logging shared key | `string` | `""` | no |
| [instance\_type](#input\_instance\_type) | The instance type to use | `string` | `"t2.medium"` | no |
| [name\_postfix](#input\_name\_postfix) | The postfix string to append to the hostname, prevents namespace clashes | `string` | `""` | no |
| [org\_name](#input\_org\_name) | Cloudfoundry ORG name to use for reverse proxy | `string` | n/a | yes |
| [postgres\_plan](#input\_postgres\_plan) | The HSDP-RDS PostgreSQL plan to use | `string` | `"postgres-medium-dev"` | no |
| [private\_key](#input\_private\_key) | Private key for SSH access (should not have a passphrase) | `string` | `""` | no |
| [redis\_plan](#input\_redis\_plan) | The Redis plan to use | `string` | `"redis-standalone"` | no |
| [space\_name](#input\_space\_name) | Cloudfoundry SPACE name to use for reverse proxy | `string` | n/a | yes |
| [superset\_image](#input\_superset\_image) | The Temporal server image to use | `string` | `"apache/superset:latest-dev"` | no |
| [user](#input\_user) | LDAP user to use for connections | `string` | n/a | yes |
| [user\_groups](#input\_user\_groups) | User groups to assign to cluster | `list(string)` | n/a | yes |
| [volume\_size](#input\_volume\_size) | The volume size to use in GB | `number` | `50` | no |
| [worker\_instance\_type](#input\_worker\_instance\_type) | Instance type of worker nodes | `string` | `"m5.xlarge"` | no |
| [workers](#input\_workers) | Number of worker nodes to spin up | `number` | `1` | no |

## Outputs

| Name | Description |
|------|-------------|
| [superset\_id](#output\_superset\_id) | Server ID of Superset |
| [superset\_ip](#output\_superset\_ip) | Private IP address of Superset server |
| [superset\_proxy\_endpoint](#output\_superset\_proxy\_endpoint) | URL of the Superset proxy |