Exception TypeError: no implicit conversion of nil into String

Started seeing this issue in our github actions workflow. Using ubuntu:latest image.
All was working on 11th October. Any ideas?

Batch Run 1:

Running: terraspace plan 05-vpc Logs: log/plan/05-vpc.log

Running: terraspace plan 00-sns-notifications Logs: log/plan/00-sns-notifications.log

Running: terraspace plan 00-lambda-artifact-buckets Logs: log/plan/00-lambda-artifact-buckets.log

Running: terraspace plan 00-ecr Logs: log/plan/00-ecr.log

terraspace plan 00-ecr: Exception TypeError: no implicit conversion of nil into String

terraspace plan 00-lambda-artifact-buckets: Exception TypeError: no implicit conversion of nil into String

terraspace plan 00-sns-notifications: Exception TypeError: no implicit conversion of nil into String

terraspace plan 05-vpc: Exception TypeError: no implicit conversion of nil into String

Error running: terraspace plan 00-ecr. Fix the error above or check logs for the error.

Error running: terraspace plan 00-lambda-artifact-buckets. Fix the error above or check logs for the error.

Error running: terraspace plan 00-sns-notifications. Fix the error above or check logs for the error.

Error running: terraspace plan 05-vpc. Fix the error above or check logs for the error.

Ruby and Terraspace installs:

7s

Run ruby/setup-ruby@v1

Modifying PATH

Downloading Ruby

Extracting Ruby

Print Ruby version

Installing Bundler

bundle install

/opt/hostedtoolcache/Ruby/3.1.6/x64/bin/bundle config --local path /home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle

/opt/hostedtoolcache/Ruby/3.1.6/x64/bin/bundle lock

Fetching gem metadata from https://rubygems.org/

Resolving dependencies…

Writing lockfile to /home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/Gemfile.lock

Cache key: setup-ruby-bundler-cache-v6-ubuntu-24.04-x64-ruby-3.1.6-wd-/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure-with–without–only–Gemfile.lock-806d702844d0a4e3d4b8ee59d0c883921d27b623e2fa90f7285f03ed6c582d0a

Received 0 of 23425007 (0.0%), 0.0 MBs/sec

Cache Size: ~22 MB (23425007 B)

/usr/bin/tar -xf /home/runner/work/_temp/cb8d18b3-f817-45a5-ac4d-0aa9955aaf8d/cache.tzst -P -C /home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure --use-compress-program unzstd

Cache restored successfully

Found cache for key: setup-ruby-bundler-cache-v6-ubuntu-24.04-x64-ruby-3.1.6-wd-/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure-with–without–only–Gemfile.lock-806d702844d0a4e3d4b8ee59d0c883921d27b623e2fa90f7285f03ed6c582d0a

/opt/hostedtoolcache/Ruby/3.1.6/x64/bin/bundle install --jobs 4

Received 23425007 of 23425007 (100.0%), 11.2 MBs/sec

Using base64 0.2.0

Using bigdecimal 3.1.8

Using concurrent-ruby 1.3.4

Using connection_pool 2.4.1

Using drb 2.2.1

Using i18n 1.14.6

Using logger 1.6.1

Using minitest 5.25.1

Using securerandom 0.3.1

Using tzinfo 2.0.6

Using activesupport 7.2.1

Using public_suffix 6.0.1

Using addressable 2.8.7

Using aws-eventstream 1.3.0

Using aws-partitions 1.989.0

Using aws-sigv4 1.10.0

Using jmespath 1.6.2

Using aws-sdk-core 3.209.1

Using aws-sdk-dynamodb 1.125.0

Using aws-sdk-kms 1.94.0

Using aws-sdk-s3 1.167.0

Using aws-sdk-secretsmanager 1.108.0

Using aws-sdk-ssm 1.182.0

Using memoist 0.16.2

Using aws_data 0.1.1

Using bundler 2.3.27

Using text-table 1.2.4

Using zeitwerk 2.6.18

Using cli-format 0.6.1

Using deep_merge 1.2.2

Using diff-lcs 1.5.1

Using dotenv 3.1.4

Using rainbow 3.1.1

Using dsl_evaluator 0.3.2

Using eventmachine 1.2.7

Using eventmachine-tail 0.6.5

Using uri 0.13.1

Using net-http 0.4.1

Using faraday-net_http 3.3.0

Using json 2.7.2

Using faraday 2.12.0

Using faraday-retry 2.2.1

Using graph 2.11.1

Using rhcl 0.1.0

Using hcl_parser 0.2.2

Using racc 1.8.1

Using nokogiri 1.16.7 (x86_64-linux)

Using sawyer 0.9.2

Using octokit 9.1.0

Using tilt 2.4.0

Using render_me_pretty 1.0.0

Using rexml 3.3.8

Using rspec-support 3.13.1

Using rspec-core 3.13.1

Using rspec-expectations 3.13.3

Using rspec-mocks 3.13.2

Using rspec 3.13.0

Using rspec-terraspace 0.3.3

Using rubyzip 2.3.2

Using thor 1.3.2

Using s3-secure 0.7.0

Using terraspace-bundler 0.5.0

Using tty-tree 0.4.0

Using zip_folder 0.1.0

Using terraspace 2.2.17

Using terraspace_ci_github 0.2.0

Using terraspace_plugin_aws 0.6.1

Bundle complete! 4 Gemfile dependencies, 67 gems now installed.

Bundled gems are installed into ./vendor/bundle

Took 5.34 seconds

4s

Run .github/bin/install

.github/bin/install: line 4: brew: command not found

.github/bin/install: line 5: tfenv: command not found

.github/bin/install: line 6: tfenv: command not found

.github/bin/install: line 7: terraform: command not found

Using base64 0.2.0

Using bigdecimal 3.1.8

Using concurrent-ruby 1.3.4

Using connection_pool 2.4.1

Using drb 2.2.1

Using i18n 1.14.6

Using logger 1.6.1

Using minitest 5.25.1

Using securerandom 0.3.1

Using tzinfo 2.0.6

Using activesupport 7.2.1

Using public_suffix 6.0.1

Using addressable 2.8.7

Using aws-eventstream 1.3.0

Using aws-partitions 1.989.0

Using aws-sigv4 1.10.0

Using jmespath 1.6.2

Using aws-sdk-core 3.209.1

Using aws-sdk-dynamodb 1.125.0

Using aws-sdk-kms 1.94.0

Using aws-sdk-s3 1.167.0

Using aws-sdk-secretsmanager 1.108.0

Using aws-sdk-ssm 1.182.0

Using memoist 0.16.2

Using aws_data 0.1.1

Using bundler 2.3.27

Using text-table 1.2.4

Using zeitwerk 2.6.18

Using cli-format 0.6.1

Using deep_merge 1.2.2

Using diff-lcs 1.5.1

Using dotenv 3.1.4

Using rainbow 3.1.1

Using dsl_evaluator 0.3.2

Using eventmachine 1.2.7

Using eventmachine-tail 0.6.5

Using uri 0.13.1

Using net-http 0.4.1

Using faraday-net_http 3.3.0

Using json 2.7.2

Using faraday 2.12.0

Using faraday-retry 2.2.1

Using graph 2.11.1

Using rhcl 0.1.0

Using hcl_parser 0.2.2

Using racc 1.8.1

Using nokogiri 1.16.7 (x86_64-linux)

Using sawyer 0.9.2

Using octokit 9.1.0

Using tilt 2.4.0

Using render_me_pretty 1.0.0

Using rexml 3.3.8

Using rspec-support 3.13.1

Using rspec-core 3.13.1

Using rspec-expectations 3.13.3

Using rspec-mocks 3.13.2

Using rspec 3.13.0

Using rspec-terraspace 0.3.3

Using rubyzip 2.3.2

Using thor 1.3.2

Using s3-secure 0.7.0

Using terraspace-bundler 0.5.0

Using tty-tree 0.4.0

Using zip_folder 0.1.0

Using terraspace 2.2.17

Using terraspace_ci_github 0.2.0

Using terraspace_plugin_aws 0.6.1

Bundle complete! 4 Gemfile dependencies, 67 gems now installed.

Bundled gems are installed into ./vendor/bundle

create /usr/local/bin/terraspace

chmod /usr/local/bin/terraspace

A terraspace shim as been generated at /usr/local/bin/terraspace

Logfile created on 2024-10-14 10:18:34 +0000 by logger.rb/v1.6.1

[2024-10-14T10:18:34 #1975 terraspace plan 00-ecr]: Current directory: .terraspace-cache/eu-west-2/dev/stacks/00-ecr

[2024-10-14T10:18:34 #1975 terraspace plan 00-ecr]: Exception TypeError: no implicit conversion of nil into String

[2024-10-14T10:18:34 #1975 terraspace plan 00-ecr]: /home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/core.rb:7:in `basename’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/core.rb:7:in `terraform_bin’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/terraform/runner.rb:48:in `terraform’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/terraform/runner.rb:15:in `block in run’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/terraform/runner.rb:97:in `time_took’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/terraform/runner.rb:14:in `run’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/cli/init.rb:23:in `block in init’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/timeout.rb:107:in `block in timeout’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/timeout.rb:36:in `block in catch’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/timeout.rb:36:in `catch’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/timeout.rb:36:in `catch’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/timeout.rb:123:in `timeout’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/cli/init.rb:22:in `init’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/cli/init.rb:12:in `run’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/cli/commander.rb:10:in `run’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/cli/plan.rb:43:in `plan_only’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/cli/plan.rb:17:in `perform’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/cli/plan.rb:11:in `run’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:132:in `run_terraspace’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:62:in `deploy_stack’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:46:in `block (3 levels) in deploy_batch’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:45:in `fork’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:45:in `block (2 levels) in deploy_batch’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:43:in `each’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:43:in `block in deploy_batch’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:42:in `each’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:42:in `each_slice’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:42:in `deploy_batch’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:35:in `block in deploy_batches’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:33:in `each’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:33:in `each_with_index’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:33:in `deploy_batches’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:16:in `block in run’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:188:in `time_took’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/all/runner.rb:12:in `run’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/cli/all.rb:43:in `plan’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/thor-1.3.2/lib/thor/command.rb:28:in `run’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/thor-1.3.2/lib/thor/invocation.rb:127:in `invoke_command’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/thor-1.3.2/lib/thor.rb:538:in `dispatch’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/command.rb:76:in `dispatch’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/thor-1.3.2/lib/thor/invocation.rb:116:in `invoke’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/thor-1.3.2/lib/thor.rb:338:in `block in subcommand’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/thor-1.3.2/lib/thor/command.rb:28:in `run’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/thor-1.3.2/lib/thor/invocation.rb:127:in `invoke_command’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/thor-1.3.2/lib/thor.rb:538:in `dispatch’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/command.rb:76:in `dispatch’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/thor-1.3.2/lib/thor/base.rb:584:in `start’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/lib/terraspace/cli/concern.rb:65:in `start’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/gems/terraspace-2.2.17/exe/terraspace:7:in `<top (required)>’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/bin/terraspace:25:in `load’

/home/runner/work/aws-asteg-infrastructure/aws-asteg-infrastructure/vendor/bundle/ruby/3.1.0/bin/terraspace:25:in `<top (required)>’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/cli/exec.rb:58:in `load’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/cli/exec.rb:58:in `kernel_load’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/cli/exec.rb:23:in `run’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/cli.rb:486:in `exec’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor.rb:392:in `dispatch’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/cli.rb:31:in `dispatch’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/vendor/thor/lib/thor/base.rb:485:in `start’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/cli.rb:25:in `start’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/gems/3.1.0/gems/bundler-2.3.27/libexec/bundle:48:in `block in <top (required)>’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/3.1.0/bundler/friendly_errors.rb:120:in `with_friendly_errors’

/opt/hostedtoolcache/Ruby/3.1.6/x64/lib/ruby/gems/3.1.0/gems/bundler-2.3.27/libexec/bundle:36:in `<top (required)>’

/opt/hostedtoolcache/Ruby/3.1.6/x64/bin/bundle:25:in `load’

/opt/hostedtoolcache/Ruby/3.1.6/x64/bin/bundle:25:in `’

This is resolved and a little embarrassing perhaps.

Added a terraform installation step and all is good.
This was working previously so not sure what has changed.