terraspace 0.6.23 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/.cody/README.md +2 -0
  3. data/.cody/azurerm/bin/az/configure.sh +5 -1
  4. data/.cody/azurerm/project.rb +4 -0
  5. data/.cody/azurerm/role.rb +0 -1
  6. data/.cody/google/bin/gcloud/configure.sh +2 -1
  7. data/.cody/google/project.rb +4 -0
  8. data/.cody/google/role.rb +0 -1
  9. data/.cody/none/bin/build.sh +15 -0
  10. data/.cody/none/buildspec.yml +10 -0
  11. data/.cody/none/project.rb +2 -0
  12. data/.cody/none/role.rb +4 -0
  13. data/.cody/shared/script/install/terraform.sh +14 -6
  14. data/.cody/unit/buildspec.yml +1 -0
  15. data/.pipedream/pipeline.rb +1 -0
  16. data/CHANGELOG.md +63 -0
  17. data/Gemfile +6 -0
  18. data/README.md +8 -4
  19. data/lib/templates/examples/hcl/module/main.tf +3 -0
  20. data/lib/templates/examples/hcl/module/outputs.tf +4 -0
  21. data/lib/templates/examples/hcl/module/variables.tf +5 -0
  22. data/lib/templates/examples/hcl/stack/main.tf +4 -0
  23. data/lib/templates/examples/hcl/stack/outputs.tf +4 -0
  24. data/lib/templates/examples/hcl/stack/variables.tf +5 -0
  25. data/lib/templates/examples/ruby/module/main.rb +3 -0
  26. data/lib/templates/examples/ruby/module/outputs.rb +4 -0
  27. data/lib/templates/examples/ruby/module/variables.rb +5 -0
  28. data/lib/templates/examples/ruby/stack/main.rb +4 -0
  29. data/lib/templates/examples/ruby/stack/outputs.rb +4 -0
  30. data/lib/templates/examples/ruby/stack/variables.rb +5 -0
  31. data/lib/templates/hcl/project/config/terraform/backend.tf.tt +5 -13
  32. data/lib/templates/hcl/project/config/terraform/provider.tf +4 -14
  33. data/lib/terraspace/autodetect.rb +15 -0
  34. data/lib/terraspace/autoloader.rb +6 -1
  35. data/lib/terraspace/builder.rb +1 -9
  36. data/lib/terraspace/bundle.rb +54 -0
  37. data/lib/terraspace/cli/concern.rb +113 -0
  38. data/lib/terraspace/cli/help/new/example.md +7 -1
  39. data/lib/terraspace/cli/help.rb +7 -8
  40. data/lib/terraspace/cli/new/example.rb +36 -0
  41. data/lib/terraspace/cli/new/helpers/plugin_gem.rb +2 -14
  42. data/lib/terraspace/cli/new/helpers.rb +1 -1
  43. data/lib/terraspace/cli/new/module.rb +1 -1
  44. data/lib/terraspace/cli/new/plugin/helper.rb +1 -1
  45. data/lib/terraspace/cli/new/plugin.rb +1 -1
  46. data/lib/terraspace/cli/new/project.rb +11 -17
  47. data/lib/terraspace/cli/new/sequence.rb +1 -1
  48. data/lib/terraspace/cli/new/source/core.rb +7 -6
  49. data/lib/terraspace/cli/new/source/plugin.rb +2 -2
  50. data/lib/terraspace/cli/new/stack.rb +3 -2
  51. data/lib/terraspace/cli/new/test.rb +12 -2
  52. data/lib/terraspace/cli/new.rb +4 -0
  53. data/lib/terraspace/cli/{check_setup.rb → setup/check.rb} +5 -3
  54. data/lib/terraspace/cli/setup.rb +9 -0
  55. data/lib/terraspace/cli/tfc_concern.rb +1 -1
  56. data/lib/terraspace/cli.rb +34 -27
  57. data/lib/terraspace/command.rb +3 -2
  58. data/lib/terraspace/compiler/commands_concern.rb +0 -8
  59. data/lib/terraspace/compiler/expander/backend.rb +44 -0
  60. data/lib/terraspace/compiler/expander.rb +11 -19
  61. data/lib/terraspace/core.rb +10 -0
  62. data/lib/terraspace/plugin/expander/friendly.rb +1 -0
  63. data/lib/terraspace/plugin/expander/interface.rb +19 -4
  64. data/lib/terraspace/terraform/api/client.rb +1 -1
  65. data/lib/terraspace/terraform/args/custom.rb +11 -6
  66. data/lib/terraspace/terraform/args/pass.rb +110 -0
  67. data/lib/terraspace/terraform/args/{default.rb → thor.rb} +1 -3
  68. data/lib/terraspace/{compiler → terraform/runner}/backend/parser.rb +1 -1
  69. data/lib/terraspace/{compiler → terraform/runner}/backend.rb +14 -1
  70. data/lib/terraspace/terraform/runner/retryer.rb +1 -1
  71. data/lib/terraspace/terraform/runner.rb +25 -15
  72. data/lib/terraspace/terraform/tfc/sync.rb +1 -1
  73. data/lib/terraspace/version.rb +1 -1
  74. data/spec/terraspace/terraform/args/custom_spec.rb +4 -4
  75. data/spec/terraspace/terraform/args/pass_spec.rb +101 -0
  76. data/terraspace.gemspec +2 -4
  77. metadata +46 -50
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: terraspace
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.23
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tung Nguyen
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-12-18 00:00:00.000000000 Z
11
+ date: 2022-01-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -164,20 +164,34 @@ dependencies:
164
164
  - - ">="
165
165
  - !ruby/object:Gem::Version
166
166
  version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: rexml
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
167
181
  - !ruby/object:Gem::Dependency
168
182
  name: terraspace-bundler
169
183
  requirement: !ruby/object:Gem::Requirement
170
184
  requirements:
171
185
  - - "~>"
172
186
  - !ruby/object:Gem::Version
173
- version: 0.4.0
187
+ version: 0.4.4
174
188
  type: :runtime
175
189
  prerelease: false
176
190
  version_requirements: !ruby/object:Gem::Requirement
177
191
  requirements:
178
192
  - - "~>"
179
193
  - !ruby/object:Gem::Version
180
- version: 0.4.0
194
+ version: 0.4.4
181
195
  - !ruby/object:Gem::Dependency
182
196
  name: thor
183
197
  requirement: !ruby/object:Gem::Requirement
@@ -220,48 +234,6 @@ dependencies:
220
234
  - - ">="
221
235
  - !ruby/object:Gem::Version
222
236
  version: '0'
223
- - !ruby/object:Gem::Dependency
224
- name: terraspace_plugin_aws
225
- requirement: !ruby/object:Gem::Requirement
226
- requirements:
227
- - - "~>"
228
- - !ruby/object:Gem::Version
229
- version: 0.3.0
230
- type: :runtime
231
- prerelease: false
232
- version_requirements: !ruby/object:Gem::Requirement
233
- requirements:
234
- - - "~>"
235
- - !ruby/object:Gem::Version
236
- version: 0.3.0
237
- - !ruby/object:Gem::Dependency
238
- name: terraspace_plugin_azurerm
239
- requirement: !ruby/object:Gem::Requirement
240
- requirements:
241
- - - "~>"
242
- - !ruby/object:Gem::Version
243
- version: 0.3.0
244
- type: :runtime
245
- prerelease: false
246
- version_requirements: !ruby/object:Gem::Requirement
247
- requirements:
248
- - - "~>"
249
- - !ruby/object:Gem::Version
250
- version: 0.3.0
251
- - !ruby/object:Gem::Dependency
252
- name: terraspace_plugin_google
253
- requirement: !ruby/object:Gem::Requirement
254
- requirements:
255
- - - "~>"
256
- - !ruby/object:Gem::Version
257
- version: 0.3.0
258
- type: :runtime
259
- prerelease: false
260
- version_requirements: !ruby/object:Gem::Requirement
261
- requirements:
262
- - - "~>"
263
- - !ruby/object:Gem::Version
264
- version: 0.3.0
265
237
  - !ruby/object:Gem::Dependency
266
238
  name: rspec-terraspace
267
239
  requirement: !ruby/object:Gem::Requirement
@@ -373,6 +345,10 @@ files:
373
345
  - ".cody/google/buildspec.yml"
374
346
  - ".cody/google/project.rb"
375
347
  - ".cody/google/role.rb"
348
+ - ".cody/none/bin/build.sh"
349
+ - ".cody/none/buildspec.yml"
350
+ - ".cody/none/project.rb"
351
+ - ".cody/none/role.rb"
376
352
  - ".cody/shared/script/install.sh"
377
353
  - ".cody/shared/script/install/terraform.sh"
378
354
  - ".cody/shared/script/install/terraspace.sh"
@@ -410,6 +386,18 @@ files:
410
386
  - lib/templates/base/project/Terrafile
411
387
  - lib/templates/base/project/config/app.rb
412
388
  - lib/templates/base/shim/terraspace
389
+ - lib/templates/examples/hcl/module/main.tf
390
+ - lib/templates/examples/hcl/module/outputs.tf
391
+ - lib/templates/examples/hcl/module/variables.tf
392
+ - lib/templates/examples/hcl/stack/main.tf
393
+ - lib/templates/examples/hcl/stack/outputs.tf
394
+ - lib/templates/examples/hcl/stack/variables.tf
395
+ - lib/templates/examples/ruby/module/main.rb
396
+ - lib/templates/examples/ruby/module/outputs.rb
397
+ - lib/templates/examples/ruby/module/variables.rb
398
+ - lib/templates/examples/ruby/stack/main.rb
399
+ - lib/templates/examples/ruby/stack/outputs.rb
400
+ - lib/templates/examples/ruby/stack/variables.rb
413
401
  - lib/templates/hcl/module/main.tf
414
402
  - lib/templates/hcl/module/outputs.tf
415
403
  - lib/templates/hcl/module/variables.tf
@@ -477,6 +465,7 @@ files:
477
465
  - lib/terraspace/all/summary.rb
478
466
  - lib/terraspace/app.rb
479
467
  - lib/terraspace/app/inits.rb
468
+ - lib/terraspace/autodetect.rb
480
469
  - lib/terraspace/autoloader.rb
481
470
  - lib/terraspace/booter.rb
482
471
  - lib/terraspace/builder.rb
@@ -487,7 +476,6 @@ files:
487
476
  - lib/terraspace/cli/base.rb
488
477
  - lib/terraspace/cli/build/placeholder.rb
489
478
  - lib/terraspace/cli/bundle.rb
490
- - lib/terraspace/cli/check_setup.rb
491
479
  - lib/terraspace/cli/clean.rb
492
480
  - lib/terraspace/cli/clean/all.rb
493
481
  - lib/terraspace/cli/clean/base.rb
@@ -497,6 +485,7 @@ files:
497
485
  - lib/terraspace/cli/completer.rb
498
486
  - lib/terraspace/cli/completer/script.rb
499
487
  - lib/terraspace/cli/completer/script.sh
488
+ - lib/terraspace/cli/concern.rb
500
489
  - lib/terraspace/cli/concerns/source_dirs.rb
501
490
  - lib/terraspace/cli/down.rb
502
491
  - lib/terraspace/cli/fmt.rb
@@ -564,6 +553,7 @@ files:
564
553
  - lib/terraspace/cli/logs/concern.rb
565
554
  - lib/terraspace/cli/new.rb
566
555
  - lib/terraspace/cli/new/arg.rb
556
+ - lib/terraspace/cli/new/example.rb
567
557
  - lib/terraspace/cli/new/git_hook.rb
568
558
  - lib/terraspace/cli/new/helper.rb
569
559
  - lib/terraspace/cli/new/helpers.rb
@@ -581,6 +571,8 @@ files:
581
571
  - lib/terraspace/cli/new/stack.rb
582
572
  - lib/terraspace/cli/new/test.rb
583
573
  - lib/terraspace/cli/seed.rb
574
+ - lib/terraspace/cli/setup.rb
575
+ - lib/terraspace/cli/setup/check.rb
584
576
  - lib/terraspace/cli/state.rb
585
577
  - lib/terraspace/cli/summary.rb
586
578
  - lib/terraspace/cli/test.rb
@@ -589,8 +581,6 @@ files:
589
581
  - lib/terraspace/cli/tfc_concern.rb
590
582
  - lib/terraspace/cli/up.rb
591
583
  - lib/terraspace/command.rb
592
- - lib/terraspace/compiler/backend.rb
593
- - lib/terraspace/compiler/backend/parser.rb
594
584
  - lib/terraspace/compiler/basename.rb
595
585
  - lib/terraspace/compiler/builder.rb
596
586
  - lib/terraspace/compiler/builder/skip.rb
@@ -621,6 +611,7 @@ files:
621
611
  - lib/terraspace/compiler/erb/helpers.rb
622
612
  - lib/terraspace/compiler/erb/render.rb
623
613
  - lib/terraspace/compiler/expander.rb
614
+ - lib/terraspace/compiler/expander/backend.rb
624
615
  - lib/terraspace/compiler/helper_extender.rb
625
616
  - lib/terraspace/compiler/select.rb
626
617
  - lib/terraspace/compiler/strategy/abstract_base.rb
@@ -690,9 +681,10 @@ files:
690
681
  - lib/terraspace/terraform/api/vars/rb.rb
691
682
  - lib/terraspace/terraform/api/workspace.rb
692
683
  - lib/terraspace/terraform/args/custom.rb
693
- - lib/terraspace/terraform/args/default.rb
694
684
  - lib/terraspace/terraform/args/dsl.rb
685
+ - lib/terraspace/terraform/args/pass.rb
695
686
  - lib/terraspace/terraform/args/shorthands.rb
687
+ - lib/terraspace/terraform/args/thor.rb
696
688
  - lib/terraspace/terraform/ihooks/after/plan.rb
697
689
  - lib/terraspace/terraform/ihooks/base.rb
698
690
  - lib/terraspace/terraform/ihooks/before/plan.rb
@@ -702,6 +694,8 @@ files:
702
694
  - lib/terraspace/terraform/remote_state/output_proxy.rb
703
695
  - lib/terraspace/terraform/remote_state/unresolved.rb
704
696
  - lib/terraspace/terraform/runner.rb
697
+ - lib/terraspace/terraform/runner/backend.rb
698
+ - lib/terraspace/terraform/runner/backend/parser.rb
705
699
  - lib/terraspace/terraform/runner/retryer.rb
706
700
  - lib/terraspace/terraform/tfc/runs.rb
707
701
  - lib/terraspace/terraform/tfc/runs/base.rb
@@ -844,6 +838,7 @@ files:
844
838
  - spec/terraspace/seeder/content_spec.rb
845
839
  - spec/terraspace/seeder_spec.rb
846
840
  - spec/terraspace/terraform/args/custom_spec.rb
841
+ - spec/terraspace/terraform/args/pass_spec.rb
847
842
  - spec/terraspace/terraform/remote_state/fetcher_spec.rb
848
843
  - spec/terraspace/terraform/remote_state/marker/output_spec.rb
849
844
  - spec/terraspace/terraform/remote_state/output_proxy_spec.rb
@@ -997,6 +992,7 @@ test_files:
997
992
  - spec/terraspace/seeder/content_spec.rb
998
993
  - spec/terraspace/seeder_spec.rb
999
994
  - spec/terraspace/terraform/args/custom_spec.rb
995
+ - spec/terraspace/terraform/args/pass_spec.rb
1000
996
  - spec/terraspace/terraform/remote_state/fetcher_spec.rb
1001
997
  - spec/terraspace/terraform/remote_state/marker/output_spec.rb
1002
998
  - spec/terraspace/terraform/remote_state/output_proxy_spec.rb