diff --git a/README.md b/README.md index e47dd774e..aa47a851b 100644 --- a/README.md +++ b/README.md @@ -295,9 +295,9 @@ Config example: ```yaml - id: terraform_validate args: - - --envs=AWS_DEFAULT_REGION="us-west-2" - - --envs=AWS_ACCESS_KEY_ID="anaccesskey" - - --envs=AWS_SECRET_ACCESS_KEY="asecretkey" + - --env-vars=AWS_DEFAULT_REGION="us-west-2" + - --env-vars=AWS_ACCESS_KEY_ID="anaccesskey" + - --env-vars=AWS_SECRET_ACCESS_KEY="asecretkey" ``` ### checkov (deprecated) and terraform_checkov diff --git a/hooks/_common.sh b/hooks/_common.sh index 77cf83257..be19095bb 100644 --- a/hooks/_common.sh +++ b/hooks/_common.sh @@ -26,7 +26,7 @@ function common::initialize { # ARGS (array) arguments that configure wrapped tool behavior # HOOK_CONFIG (array) arguments that configure hook behavior # TF_INIT_ARGS (array) arguments for `terraform init` command -# ENVS (array) environment variables will be available +# ENV_VARS (array) environment variables will be available # for all 3rd-party tools executed by a hook. # FILES (array) filenames to check # Arguments: @@ -40,10 +40,11 @@ function common::parse_cmdline { # Used inside `common::terraform_init` function TF_INIT_ARGS=() # Used inside `common::export_provided_env_vars` function - ENVS=() + ENV_VARS=() local argv - argv=$(getopt -o a:,h:,i:,e: --long args:,hook-config:,init-args:,tf-init-args:,envs: -- "$@") || return + # TODO: Planned breaking change: remove `init-args`, `envs` as not self-descriptive + argv=$(getopt -o a:,h:,i:,e: --long args:,hook-config:,init-args:,tf-init-args:,envs:,env-vars: -- "$@") || return eval "set -- $argv" for argv; do @@ -64,9 +65,10 @@ function common::parse_cmdline { TF_INIT_ARGS+=("$1") shift ;; - -e | --envs) + # TODO: Planned breaking change: remove `--envs` as not self-descriptive + -e | --envs | --env-vars) shift - ENVS+=("$1") + ENV_VARS+=("$1") shift ;; --) diff --git a/hooks/infracost_breakdown.sh b/hooks/infracost_breakdown.sh index aecc4be0d..518882b75 100755 --- a/hooks/infracost_breakdown.sh +++ b/hooks/infracost_breakdown.sh @@ -10,7 +10,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # shellcheck disable=SC2153 # False positive infracost_breakdown_ "${HOOK_CONFIG[*]}" "${ARGS[*]}" diff --git a/hooks/terraform_checkov.sh b/hooks/terraform_checkov.sh index 13008e8cf..adba28571 100755 --- a/hooks/terraform_checkov.sh +++ b/hooks/terraform_checkov.sh @@ -10,7 +10,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # Support for setting PATH to repo root. # shellcheck disable=SC2178 # It's the simplest syntax for that case diff --git a/hooks/terraform_docs.sh b/hooks/terraform_docs.sh index 5b43deb87..033cc2eeb 100755 --- a/hooks/terraform_docs.sh +++ b/hooks/terraform_docs.sh @@ -13,7 +13,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # Support for setting relative PATH to .terraform-docs.yml config. # shellcheck disable=SC2178 # It's the simplest syntax for that case diff --git a/hooks/terraform_fmt.sh b/hooks/terraform_fmt.sh index b89266cde..99056b761 100755 --- a/hooks/terraform_fmt.sh +++ b/hooks/terraform_fmt.sh @@ -10,7 +10,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # shellcheck disable=SC2153 # False positive common::per_dir_hook "${ARGS[*]}" "$HOOK_ID" "${FILES[@]}" diff --git a/hooks/terraform_providers_lock.sh b/hooks/terraform_providers_lock.sh index 4edeeabf8..6a84da16a 100755 --- a/hooks/terraform_providers_lock.sh +++ b/hooks/terraform_providers_lock.sh @@ -11,7 +11,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # shellcheck disable=SC2153 # False positive common::per_dir_hook "${ARGS[*]}" "$HOOK_ID" "${FILES[@]}" diff --git a/hooks/terraform_tflint.sh b/hooks/terraform_tflint.sh index 8d5707e97..620ddd204 100755 --- a/hooks/terraform_tflint.sh +++ b/hooks/terraform_tflint.sh @@ -11,7 +11,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # Support for setting PATH to repo root. # shellcheck disable=SC2178 # It's the simplest syntax for that case diff --git a/hooks/terraform_tfsec.sh b/hooks/terraform_tfsec.sh index fdbb436f8..878241b36 100755 --- a/hooks/terraform_tfsec.sh +++ b/hooks/terraform_tfsec.sh @@ -10,7 +10,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # Support for setting PATH to repo root. # shellcheck disable=SC2178 # It's the simplest syntax for that case diff --git a/hooks/terraform_validate.sh b/hooks/terraform_validate.sh index be5f1e067..466105e12 100755 --- a/hooks/terraform_validate.sh +++ b/hooks/terraform_validate.sh @@ -13,7 +13,7 @@ export AWS_DEFAULT_REGION=${AWS_DEFAULT_REGION:-us-east-1} function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # shellcheck disable=SC2153 # False positive common::per_dir_hook "${ARGS[*]}" "$HOOK_ID" "${FILES[@]}" @@ -29,7 +29,7 @@ function main { # args (string with array) arguments that configure wrapped tool behavior # dir_path (string) PATH to dir relative to git repo root. # Can be used in error logging -# ENVS (array) environment variables that will be used with +# ENV_VARS (array) environment variables that will be used with # `terraform` commands # Outputs: # If failed - print out hook checks status diff --git a/hooks/terraform_wrapper_module_for_each.sh b/hooks/terraform_wrapper_module_for_each.sh index 905fa8de9..98a85ac90 100755 --- a/hooks/terraform_wrapper_module_for_each.sh +++ b/hooks/terraform_wrapper_module_for_each.sh @@ -10,7 +10,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars check_dependencies diff --git a/hooks/terragrunt_fmt.sh b/hooks/terragrunt_fmt.sh index 5ef51570d..d7612adfa 100755 --- a/hooks/terragrunt_fmt.sh +++ b/hooks/terragrunt_fmt.sh @@ -10,7 +10,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # shellcheck disable=SC2153 # False positive common::per_dir_hook "${ARGS[*]}" "$HOOK_ID" "${FILES[@]}" diff --git a/hooks/terragrunt_validate.sh b/hooks/terragrunt_validate.sh index ae9be6b17..bbefc6543 100755 --- a/hooks/terragrunt_validate.sh +++ b/hooks/terragrunt_validate.sh @@ -10,7 +10,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # shellcheck disable=SC2153 # False positive common::per_dir_hook "${ARGS[*]}" "$HOOK_ID" "${FILES[@]}" diff --git a/hooks/terrascan.sh b/hooks/terrascan.sh index ca8d87452..37b3cfec8 100755 --- a/hooks/terrascan.sh +++ b/hooks/terrascan.sh @@ -10,7 +10,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # shellcheck disable=SC2153 # False positive common::per_dir_hook "${ARGS[*]}" "$HOOK_ID" "${FILES[@]}" diff --git a/hooks/tfupdate.sh b/hooks/tfupdate.sh index f720fbb3d..4bb621416 100755 --- a/hooks/tfupdate.sh +++ b/hooks/tfupdate.sh @@ -10,7 +10,7 @@ readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" function main { common::initialize "$SCRIPT_DIR" common::parse_cmdline "$@" - common::export_provided_env_vars "${ENVS[@]}" + common::export_provided_env_vars "${ENV_VARS[@]}" common::parse_and_export_env_vars # shellcheck disable=SC2153 # False positive common::per_dir_hook "${ARGS[*]}" "$HOOK_ID" "${FILES[@]}"