[x] Upgrade Terraspace: Are you using the latest version of Terraspace? This allows Terraspace to fix issues fast. There's an Upgrading Guide: https://terraspace.cloud/docs/misc/upgrading/
[x] Reproducibility: Are you reporting a bug others will be able to reproduce and not asking a question. If you're unsure or want to ask a question, do so on https://community.boltops.com
[x] Code sample: Have you put together a code sample to reproduce the issue and make it available? Code samples help speed up fixes dramatically. If it's an easily reproducible issue, then code samples are not needed. If you're unsure, please include a code sample.
My Environment
Software
Version
Operating System
Ubuntu 20.04.4 LTS
Terraform
v1.2.3
Terraspace
2.2.2
Ruby
3.0.3
Expected Behaviour
My expectation is that the smallest possible project will run without errors
Current Behavior
fmt & list and event up & down are working. summary not.
Failes with cannot load such file -- azure/storage/blob (LoadError)
Step-by-step reproduction instructions
terraspace new project keks --plugin azurerm --examples
```
=> Creating new project called keks
create keks
create keks/.gitignore
create keks/Gemfile
create keks/README.md
create keks/Terrafile
create keks/config/app.rb
=> Installing dependencies with: bundle install
Fetching gem metadata from https://rubygems.org/........
Resolving dependencies...
Using concurrent-ruby 1.1.10
Using minitest 5.16.3
Using azure_info 0.1.5
Using hashie 5.0.0
Using tilt 2.0.11
Using rexml 3.2.5
Using i18n 1.12.0
Using rainbow 3.1.1
Using tzinfo 2.0.5
Using zeitwerk 2.6.1
Using aws-partitions 1.644.0
Using jmespath 1.6.1
Using bundler 2.2.32
Using activesupport 7.0.4
Using deep_merge 1.2.2
Using diff-lcs 1.5.0
Using rhcl 0.1.0
Using eventmachine 1.2.7
Using hcl_parser 0.2.2
Using racc 1.6.0
Using rspec-support 3.11.1
Using nokogiri 1.13.8 (x86_64-linux)
Using rubyzip 2.3.2
Using rspec-core 3.11.0
Using rspec-expectations 3.11.1
Using rspec-mocks 3.11.1
Using tty-tree 0.4.0
Using rack 3.0.0
Using rspec 3.11.0
Using zip_folder 0.1.0
Using graph 2.11.0
Using text-table 1.2.4
Using memoist 0.16.2
Using aws-eventstream 1.2.0
Using dsl_evaluator 0.3.1
Using rspec-terraspace 0.3.1
Using cli-format 0.2.2
Using eventmachine-tail 0.6.5
Using render_me_pretty 0.8.4
Using thor 1.2.1
Using dotenv 2.8.1
Using aws-sigv4 1.5.2
Using armrest 0.1.3
Using aws-sdk-core 3.159.0
Using terraspace_plugin_azurerm 0.7.0
Using aws-sdk-kms 1.58.0
Using aws-sdk-s3 1.114.0
Using terraspace-bundler 0.5.0
Using terraspace 2.2.2
Bundle complete! 3 Gemfile dependencies, 49 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
exist keks
create keks/config/terraform/backend.tf
create keks/config/terraform/provider.tf
=> Creating new module called example
create keks/app/modules/example
create keks/app/modules/example/main.tf
create keks/app/modules/example/outputs.tf
create keks/app/modules/example/variables.tf
=> Creating new stack called demo
create keks/app/stacks/demo
create keks/app/stacks/demo/main.tf
create keks/app/stacks/demo/outputs.tf
create keks/app/stacks/demo/variables.tf
================================================================
Congrats! You have successfully created a terraspace project.
Check out the created files. Adjust to the examples and then deploy with:
cd keks
terraspace up demo -y # to deploy
terraspace down demo -y # to destroy
More info: https://terraspace.cloud/
```
terraspace summary
```
Building one of the modules to get backend.tf info
Building .terraspace-cache/eastus/dev/stacks/demo
Summary of resources based on backend storage statefiles
/home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/zeitwerk-2.6.1/lib/zeitwerk/kernel.rb:35:in `require': cannot load such file -- azure/storage/blob (LoadError)
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/zeitwerk-2.6.1/lib/zeitwerk/kernel.rb:35:in `require'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace_plugin_azurerm-0.7.0/lib/terraspace_plugin_azurerm/interfaces/summary.rb:1:in `'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/zeitwerk-2.6.1/lib/zeitwerk/kernel.rb:27:in `require'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/zeitwerk-2.6.1/lib/zeitwerk/kernel.rb:27:in `require'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/activesupport-7.0.4/lib/active_support/inflector/methods.rb:280:in `const_get'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/activesupport-7.0.4/lib/active_support/inflector/methods.rb:280:in `constantize'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/activesupport-7.0.4/lib/active_support/core_ext/string/inflections.rb:74:in `constantize'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.2/lib/terraspace/cli/summary.rb:50:in `summary_class'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.2/lib/terraspace/cli/summary.rb:37:in `process'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.2/lib/terraspace/cli/summary.rb:19:in `run'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.2/lib/terraspace/cli.rb:194:in `summary'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.2/lib/terraspace/command.rb:76:in `dispatch'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/base.rb:485:in `start'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.2/lib/terraspace/cli/concern.rb:65:in `start'
from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace-2.2.2/exe/terraspace:7:in `'
from /home/chris/.rbenv/versions/3.0.3/bin/terraspace:25:in `load'
from /home/chris/.rbenv/versions/3.0.3/bin/terraspace:25:in `'
```
Checklist
My Environment
Expected Behaviour
My expectation is that the smallest possible project will run without errors
Current Behavior
fmt
&list
and eventup
&down
are working.summary
not.Failes with
cannot load such file -- azure/storage/blob (LoadError)
Step-by-step reproduction instructions
terraspace new project keks --plugin azurerm --examples
``` => Creating new project called keks create keks create keks/.gitignore create keks/Gemfile create keks/README.md create keks/Terrafile create keks/config/app.rb => Installing dependencies with: bundle install Fetching gem metadata from https://rubygems.org/........ Resolving dependencies... Using concurrent-ruby 1.1.10 Using minitest 5.16.3 Using azure_info 0.1.5 Using hashie 5.0.0 Using tilt 2.0.11 Using rexml 3.2.5 Using i18n 1.12.0 Using rainbow 3.1.1 Using tzinfo 2.0.5 Using zeitwerk 2.6.1 Using aws-partitions 1.644.0 Using jmespath 1.6.1 Using bundler 2.2.32 Using activesupport 7.0.4 Using deep_merge 1.2.2 Using diff-lcs 1.5.0 Using rhcl 0.1.0 Using eventmachine 1.2.7 Using hcl_parser 0.2.2 Using racc 1.6.0 Using rspec-support 3.11.1 Using nokogiri 1.13.8 (x86_64-linux) Using rubyzip 2.3.2 Using rspec-core 3.11.0 Using rspec-expectations 3.11.1 Using rspec-mocks 3.11.1 Using tty-tree 0.4.0 Using rack 3.0.0 Using rspec 3.11.0 Using zip_folder 0.1.0 Using graph 2.11.0 Using text-table 1.2.4 Using memoist 0.16.2 Using aws-eventstream 1.2.0 Using dsl_evaluator 0.3.1 Using rspec-terraspace 0.3.1 Using cli-format 0.2.2 Using eventmachine-tail 0.6.5 Using render_me_pretty 0.8.4 Using thor 1.2.1 Using dotenv 2.8.1 Using aws-sigv4 1.5.2 Using armrest 0.1.3 Using aws-sdk-core 3.159.0 Using terraspace_plugin_azurerm 0.7.0 Using aws-sdk-kms 1.58.0 Using aws-sdk-s3 1.114.0 Using terraspace-bundler 0.5.0 Using terraspace 2.2.2 Bundle complete! 3 Gemfile dependencies, 49 gems now installed. Use `bundle info [gemname]` to see where a bundled gem is installed. exist keks create keks/config/terraform/backend.tf create keks/config/terraform/provider.tf => Creating new module called example create keks/app/modules/example create keks/app/modules/example/main.tf create keks/app/modules/example/outputs.tf create keks/app/modules/example/variables.tf => Creating new stack called demo create keks/app/stacks/demo create keks/app/stacks/demo/main.tf create keks/app/stacks/demo/outputs.tf create keks/app/stacks/demo/variables.tf ================================================================ Congrats! You have successfully created a terraspace project. Check out the created files. Adjust to the examples and then deploy with: cd keks terraspace up demo -y # to deploy terraspace down demo -y # to destroy More info: https://terraspace.cloud/ ```terraspace summary
``` Building one of the modules to get backend.tf info Building .terraspace-cache/eastus/dev/stacks/demo Summary of resources based on backend storage statefiles /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/zeitwerk-2.6.1/lib/zeitwerk/kernel.rb:35:in `require': cannot load such file -- azure/storage/blob (LoadError) from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/zeitwerk-2.6.1/lib/zeitwerk/kernel.rb:35:in `require' from /home/chris/.rbenv/versions/3.0.3/lib/ruby/gems/3.0.0/gems/terraspace_plugin_azurerm-0.7.0/lib/terraspace_plugin_azurerm/interfaces/summary.rb:1:in `Code Sample
Solution Suggestion