From d00490e07608dfb113fe2d32f611d89bdfc56996 Mon Sep 17 00:00:00 2001 From: Oguzhan Unlu Date: Tue, 12 Dec 2023 13:04:43 +0300 Subject: [PATCH] Accept user input for version and config (close #4) --- README.md | 2 ++ main.tf | 4 ++-- variables.tf | 12 ++++++++++++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 5d3020e..ad22de2 100644 --- a/README.md +++ b/README.md @@ -164,6 +164,7 @@ module "rs_loader" { | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [name](#input\_name) | A name which will be prepended to the resources created | `string` | n/a | yes | +| [app\_version](#input\_app\_version) | Version of rdb-loader-redshift | `string` | "5.8.0" | no | | [redshift\_aws\_s3\_bucket\_name](#input\_redshift\_aws\_s3\_bucket\_name) | AWS bucket name where data to load is stored | `string` | n/a | yes | | [redshift\_database](#input\_redshift\_database) | Redshift database name | `string` | n/a | yes | | [redshift\_host](#input\_redshift\_host) | Redshift cluster hostname | `string` | n/a | yes | @@ -215,6 +216,7 @@ module "rs_loader" { | [user\_provided\_id](#input\_user\_provided\_id) | An optional unique identifier to identify the telemetry events emitted by this stack | `string` | `""` | no | | [webhook\_collector](#input\_webhook\_collector) | URL of webhook collector | `string` | `""` | no | | [webhook\_enabled](#input\_webhook\_enabled) | Whether webhook should be enabled or not | `bool` | `false` | no | +| [config\_override\_b64](#input\_config\_override\_b64) | App config uploaded as a base64 encoded blob. This variable facilitates dev flow, if config is incorrect this can break the deployment. | `string` | `""` | no | ## Outputs diff --git a/main.tf b/main.tf index a142d28..d3c85cf 100644 --- a/main.tf +++ b/main.tf @@ -3,7 +3,7 @@ locals { module_version = "0.1.1" app_name = "rdb-loader-redshift" - app_version = "5.6.0" + app_version = var.app_version local_tags = { Name = var.name @@ -364,7 +364,7 @@ locals { }) user_data = templatefile("${path.module}/templates/user-data.sh.tmpl", { - config_b64 = base64encode(local.config) + config_b64 = var.config_override_b64 == "" ? base64encode(local.config) : var.config_override_b64 iglu_resolver_b64 = base64encode(local.iglu_resolver) version = local.app_version diff --git a/variables.tf b/variables.tf index 08d0473..dd8a34d 100644 --- a/variables.tf +++ b/variables.tf @@ -3,6 +3,18 @@ variable "name" { type = string } +variable "app_version" { + description = "Version of rdb loader redshift" + type = string + default = "5.8.0" +} + +variable "config_override_b64" { + description = "App config uploaded as a base64 encoded blob. This variable facilitates dev flow, if config is incorrect this can break the deployment." + type = string + default = "" +} + variable "iam_permissions_boundary" { description = "The permissions boundary ARN to set on IAM roles created" default = ""