We have populated the details of our environment in the following files however Terraspace Test does not pick these up at all.
app/modules/<module|stack>/test/spec/fixtures/config/terraform/backend.tf
app/modules/<module|stack>/test/spec/fixtures/config/terraform/provider.tf.
app/modules/<module|stack>/test/spec/fixtures/config/terraform/variables.tf
we have config/helpers/custom_helpers.rb:
require ‘git’
module Terraspace::Project::CustomHelpers
def git_scm_info
# Determine if Terraspace is being run via an ADO pipeline, or locally
if (ENV.include?('USER') && (ENV['USER'] == "vsts"))
# Looks like we're running on ADO...
platform = "ADO"
commit_hash = ENV['BUILD_SOURCEVERSION'][0..11]
commit_branch = ENV['BUILD_SOURCEBRANCH'].delete_prefix('refs/heads/')
else
# Running locally
platform = "LOCAL"
# Create a Git client using the current working directory as the base
#git = Git.open('.', :log => Logger.new(STDERR))
git = Git.open('.')
# Grab the list of commits from git's log
commits = git.log
# Assign the current branch and the most recent commit to some variables
commit_branch = git.current_branch
commit_hash = "#{commits.first}"[0..11] # 'commits.first' retrives the most recent commit in the commit list
end
# Create a Hash with the various items of information has key:value pairs
git_scm_info_hash = {
"platform" => platform,
"commit_branch" => commit_branch,
"commit_hash" => commit_hash
}
# Return the hash
git_scm_info_hash
end
def htp_environment
# Detect if AWS_PROFILE env var is set
if !ENV.include?('USER')
return "AWS_PROFILE not set"
end
# Based on the value of the AWS_PROFILE env var, return a valid HTP environment reference
case ENV['AWS_PROFILE']
when /^SOMEREGEX1/
"lab"
when /^SOMEREGEX2/
"dev"
when /^SOMEREGEX3/
"sbx"
when /^SOMEREGEX4/
"shared"
when /^SOMEREGEX5/
"prd"
else
"AWS_PROFILE value #{ENV['AWS_PROFILE']} not recognised"
end
end
def htp_prefix
# GUARDRAILS: Check the user is authenticated to the correct AWS spoke
# If the TS_ENV var matches the account in their AWS_PROFILE(htp_environment), proceed
if Terraspace.env == htp_environment
nil
# If the AWS-authenticated account is lab and TS_ENV is set to a lab cluster ID 'htp-', proceed
elsif htp_environment == "lab" && Terraspace.env.start_with?("htp-")
Terraspace.env
else
raise "AWS Spoke/Environment mismatch. Current spoke: " + htp_environment + "\n TS_ENV: " + Terraspace.env
end
end
end
Is there any other config that needs to be set?
❯ FULL_BACKTRACE=1 TS_ENV=htp-4390793 bundle exec terraspace test
=> cd test && bundle exec rspec
main
Building test harness at: /tmp/terraspace/test-harnesses/htp-config-harness
Test harness built.
=> TS_ENV=htp-4390793 terraspace up htp-config -y
Building .terraspace-cache/eu-west-1/htp-4390793/stacks/htp-config
NameError: undefined local variable or method `htp_environment' for #<Terraspace::Compiler::Erb::Context:0x0000000117296e50 @mod=#<Terraspace::Mod:0x00000001573576b0 @options={"init"=>true, "yes"=>true, "mod"=>"htp-config", "args"=>[]}, @name="htp-config", @consider_stacks=true, @extra=nil, @resolved=true, @_memoized_root="/tmp/terraspace/test-harnesses/htp-config-harness/app/stacks/htp-config", @root_module=true, @expander=#<Terraspace::Compiler::Expander:0x00000001575b0498 @mod=#<Terraspace::Mod:0x00000001573576b0 ...>, @backend={}, @_memoized_expander=#<TerraspacePluginAws::Interfaces::Expander:0x0000000157589870 @mod=#<Terraspace::Mod:0x00000001573576b0 ...>>>, @_memoized_cache_dir={[]=>"/tmp/terraspace/test-harnesses/htp-config-harness/.terraspace-cache/eu-west-1/htp-4390793/stacks/htp-config"}>, @options={"init"=>true, "yes"=>true, "mod"=>"htp-config", "args"=>[]}>
Error evaluating ERB template around line 4 of: /tmp/terraspace/test-harnesses/htp-config-harness/app/stacks/htp-config/tfvars/base.tfvars:
1 # Variables declared in 'base.tfvars' (this file) are evaluated for every stack
2 # and help keep the stack-level configuration DRY
3
4 environment = "<%= htp_environment %>"
5 sub_id = "<%= htp_prefix %>"
6
7 scm_info_commit_branch = "<%= git_scm_info["commit_branch"] %>"
8 scm_info_commit_hash = "<%= git_scm_info["commit_hash"] %>"
9 scm_info_platform = "<%= git_scm_info["platform"] %>"
Original backtrace:
/tmp/terraspace/test-harnesses/htp-config-harness/app/stacks/htp-config/tfvars/base.tfvars:4:in `__tilt_8520'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/tilt-2.0.11/lib/tilt/template.rb:181:in `call'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/tilt-2.0.11/lib/tilt/template.rb:181:in `evaluate'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/tilt-2.0.11/lib/tilt/template.rb:109:in `render'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/render_me_pretty-0.8.4/lib/render_me_pretty/erb.rb:91:in `render'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/render_me_pretty-0.8.4/lib/render_me_pretty.rb:11:in `result'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/erb/render.rb:10:in `build'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/strategy/tfvar/tfvars.rb:4:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/strategy/tfvar.rb:17:in `block in run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/strategy/tfvar.rb:11:in `each'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/strategy/tfvar.rb:11:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/perform.rb:34:in `compile_tfvars'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/perform.rb:13:in `compile'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/builder.rb:58:in `build_stacks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/builder.rb:46:in `block in build'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/hooks/builder.rb:25:in `run_hooks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/hooks/concern.rb:6:in `run_hooks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/builder.rb:44:in `build'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/builder.rb:31:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/cli/up.rb:80:in `build'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/cli/up.rb:19:in `perform'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/cli/up.rb:11:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/cli.rb:236:in `up'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/command.rb:76:in `dispatch'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/base.rb:485:in `start'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/cli/concern.rb:65:in `start'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-terraspace-0.3.2/lib/rspec/terraspace/ts.rb:40:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-terraspace-0.3.2/lib/rspec/terraspace/ts.rb:27:in `up'
/Users/builduser/Workspace/BP/htf-infrastructure/app/stacks/htp-config/test/spec/main_spec.rb:15:in `block (2 levels) in <top (required)>'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:365:in `instance_exec'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:365:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:529:in `block in run_owned_hooks_for'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:528:in `each'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:528:in `run_owned_hooks_for'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:480:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/example_group.rb:553:in `block in run_before_context_hooks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/memoized_helpers.rb:208:in `block in isolate_for_context_hook'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/memoized_helpers.rb:204:in `instance_exec'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/memoized_helpers.rb:204:in `isolate_for_context_hook'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/example_group.rb:552:in `run_before_context_hooks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/example_group.rb:606:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:121:in `map'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/configuration.rb:2070:in `with_suite_hooks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:116:in `block in run_specs'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/reporter.rb:74:in `report'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:115:in `run_specs'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:89:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:71:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:45:in `invoke'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/exe/rspec:4:in `<top (required)>'
/Users/builduser/.rbenv/versions/3.0.3/bin/rspec:25:in `load'
/Users/builduser/.rbenv/versions/3.0.3/bin/rspec:25:in `<top (required)>'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli/exec.rb:58:in `load'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli/exec.rb:58:in `kernel_load'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli/exec.rb:23:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli.rb:486:in `exec'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli.rb:31:in `dispatch'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli.rb:25:in `start'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/exe/bundle:48:in `block in <top (required)>'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/friendly_errors.rb:120:in `with_friendly_errors'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/exe/bundle:36:in `<top (required)>'
/Users/builduser/.rbenv/versions/3.0.3/bin/bundle:23:in `load'
/Users/builduser/.rbenv/versions/3.0.3/bin/bundle:23:in `<main>'
Re-run with FULL_BACKTRACE=1 to see all lines
Exception SystemExit: exit
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/render_me_pretty-0.8.4/lib/render_me_pretty/erb.rb:128:in `exit'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/render_me_pretty-0.8.4/lib/render_me_pretty/erb.rb:128:in `print_result'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/render_me_pretty-0.8.4/lib/render_me_pretty/erb.rb:120:in `handle_exception'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/render_me_pretty-0.8.4/lib/render_me_pretty/erb.rb:97:in `rescue in render'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/render_me_pretty-0.8.4/lib/render_me_pretty/erb.rb:85:in `render'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/render_me_pretty-0.8.4/lib/render_me_pretty.rb:11:in `result'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/erb/render.rb:10:in `build'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/strategy/tfvar/tfvars.rb:4:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/strategy/tfvar.rb:17:in `block in run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/strategy/tfvar.rb:11:in `each'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/strategy/tfvar.rb:11:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/perform.rb:34:in `compile_tfvars'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/compiler/perform.rb:13:in `compile'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/builder.rb:58:in `build_stacks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/builder.rb:46:in `block in build'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/hooks/builder.rb:25:in `run_hooks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/hooks/concern.rb:6:in `run_hooks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/builder.rb:44:in `build'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/builder.rb:31:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/cli/up.rb:80:in `build'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/cli/up.rb:19:in `perform'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/cli/up.rb:11:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/cli.rb:236:in `up'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/command.rb:76:in `dispatch'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/base.rb:485:in `start'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.3/lib/terraspace/cli/concern.rb:65:in `start'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-terraspace-0.3.2/lib/rspec/terraspace/ts.rb:40:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-terraspace-0.3.2/lib/rspec/terraspace/ts.rb:27:in `up'
/Users/builduser/Workspace/BP/htf-infrastructure/app/stacks/htp-config/test/spec/main_spec.rb:15:in `block (2 levels) in <top (required)>'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:365:in `instance_exec'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:365:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:529:in `block in run_owned_hooks_for'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:528:in `each'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:528:in `run_owned_hooks_for'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/hooks.rb:480:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/example_group.rb:553:in `block in run_before_context_hooks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/memoized_helpers.rb:208:in `block in isolate_for_context_hook'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/memoized_helpers.rb:204:in `instance_exec'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/memoized_helpers.rb:204:in `isolate_for_context_hook'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/example_group.rb:552:in `run_before_context_hooks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/example_group.rb:606:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:121:in `map'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/configuration.rb:2070:in `with_suite_hooks'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:116:in `block in run_specs'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/reporter.rb:74:in `report'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:115:in `run_specs'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:89:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:71:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:45:in `invoke'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/rspec-core-3.12.0/exe/rspec:4:in `<top (required)>'
/Users/builduser/.rbenv/versions/3.0.3/bin/rspec:25:in `load'
/Users/builduser/.rbenv/versions/3.0.3/bin/rspec:25:in `<top (required)>'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli/exec.rb:58:in `load'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli/exec.rb:58:in `kernel_load'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli/exec.rb:23:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli.rb:486:in `exec'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli.rb:31:in `dispatch'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/cli.rb:25:in `start'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/exe/bundle:48:in `block in <top (required)>'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/lib/bundler/friendly_errors.rb:120:in `with_friendly_errors'
/Users/builduser/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/bundler-2.3.22/exe/bundle:36:in `<top (required)>'
/Users/builduser/.rbenv/versions/3.0.3/bin/bundle:23:in `load'
/Users/builduser/.rbenv/versions/3.0.3/bin/bundle:23:in `<main>'
=> TS_ENV=htp-4390793 terraspace down htp-config -y
Building .terraspace-cache/eu-west-1/htp-4390793/stacks/htp-config
NameError: undefined local variable or method `htp_environment' for #<Terraspace::Compiler::Erb::Context:0x0000000157598370 @mod=#<Terraspace::Mod:0x000000011732fb00 @options={"yes"=>true, "mod"=>"htp-config", "args"=>[], "destroy"=>true}, @name="htp-config", @consider_stacks=true, @extra=nil, @resolved=true, @_memoized_root="/tmp/terraspace/test-harnesses/htp-config-harness/app/stacks/htp-config", @root_module=true, @expander=#<Terraspace::Compiler::Expander:0x00000001173972c8 @mod=#<Terraspace::Mod:0x000000011732fb00 ...>, @backend={}, @_memoized_expander=#<TerraspacePluginAws::Interfaces::Expander:0x0000000117396918 @mod=#<Terraspace::Mod:0x000000011732fb00 ...>>>, @_memoized_cache_dir={[]=>"/tmp/terraspace/test-harnesses/htp-config-harness/.terraspace-cache/eu-west-1/htp-4390793/stacks/htp-config"}>, @options={"yes"=>true, "mod"=>"htp-config", "args"=>[], "destroy"=>true}>
Error evaluating ERB template around line 4 of: /tmp/terraspace/test-harnesses/htp-config-harness/app/stacks/htp-config/tfvars/base.tfvars:
1 # Variables declared in 'base.tfvars' (this file) are evaluated for every stack
2 # and help keep the stack-level configuration DRY
3
4 environment = "<%= htp_environment %>"
5 sub_id = "<%= htp_prefix %>"
6
7 scm_info_commit_branch = "<%= git_scm_info["commit_branch"] %>"
8 scm_info_commit_hash = "<%= git_scm_info["commit_hash"] %>"
9 scm_info_platform = "<%= git_scm_info["platform"] %>"