diff options
author | yoonsoonjahng <yoonsoon.jahng@yoppworks.com> | 2020-09-10 12:12:40 -0400 |
---|---|---|
committer | Neil Derraugh <neil.derraugh@yoppworks.com> | 2020-09-14 21:25:17 +0000 |
commit | c0987507209cdfa232b5113dbb386bfc3cf87805 (patch) | |
tree | 8214fa05f75253a10f01d06dfcb99ae788ddc408 /terragrunt/openlab/terragrunt.hcl | |
parent | 8e49e9261a4aa68670937f88d44b26a129ec2b4f (diff) |
Added terragrunt script pulling integration/terraform.
Issue-ID: INT-1719
Change-Id: I0282f010d07e0a1cc1259133f4237ea7e1d72126
Signed-off-by: yoonsoonjahng <yoonsoon.jahng@yoppworks.com>
Diffstat (limited to 'terragrunt/openlab/terragrunt.hcl')
-rw-r--r-- | terragrunt/openlab/terragrunt.hcl | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/terragrunt/openlab/terragrunt.hcl b/terragrunt/openlab/terragrunt.hcl new file mode 100644 index 0000000..7c55ea3 --- /dev/null +++ b/terragrunt/openlab/terragrunt.hcl @@ -0,0 +1,64 @@ +locals { + # Automatically load account-level variables + account_vars = read_terragrunt_config(find_in_parent_folders("account.hcl")) + + # Automatically load region-level variables + region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl")) + + # Automatically load environment-level variables + environment_vars = read_terragrunt_config(find_in_parent_folders("env.hcl")) + + # Extract the variables we need for easy access + user_name = local.account_vars.locals.user_name + password = local.account_vars.locals.password + auth_url = local.account_vars.locals.auth_url + project_id = local.account_vars.locals.project_id + backend = local.account_vars.locals.backend + backend_state = local.account_vars.locals.backend_state + region = local.region_vars.locals.region + environment = local.environment_vars.locals.environment +} + +remote_state { + backend = local.backend + + generate = { + path = "backend.tf" + if_exists = "overwrite_terragrunt" + } + + config = { + bucket = "${local.backend_state}" + prefix = "${path_relative_to_include()}/terraform.tfstate" + } +} + +# test/terragrunt.hcl +generate "provider" { + path = "provider.tf" + if_exists = "overwrite_terragrunt" + contents = <<EOF +provider "openstack" { + user_name = "${local.user_name}" + tenant_name = "${local.user_name}" + password = "${local.password}" + auth_url = "${local.auth_url}" + tenant_id = "${local.project_id}" + region = "${local.region}" +} +EOF +} + +# --------------------------------------------------------------------------------------------------------------------- +# GLOBAL PARAMETERS +# These variables apply to all configurations in this subfolder. These are automatically merged into the child +# `terragrunt.hcl` config via the include block. +# --------------------------------------------------------------------------------------------------------------------- + +# Configure root level variables that all resources can inherit. This is especially helpful with multi-account configs +# where terraform_remote_state data sources are placed directly into the modules. +inputs = merge( +local.account_vars.locals, +local.region_vars.locals, +local.environment_vars.locals, +) |