terraspace 2.2.1 → 2.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9173675976a0e7207ae8ce912195535f2dc43c7bba91c5a90808559ce543df2d
4
- data.tar.gz: 6c7b089a9bd1d82873ac5148fc276a0ad3578236f6cf89a3742ea049ef461bbe
3
+ metadata.gz: 265cf001f291f8f16ba281504b5a10caad4931680320781c9fa57ea996d6eba0
4
+ data.tar.gz: cfc3a6bc5c3210a5b6edf60d085f9a3487535052c01b573360d18eab44bafec0
5
5
  SHA512:
6
- metadata.gz: 72de399e443552b2981df770e22d2a710721f526aacabff3210ee28d85c4c870a2bdf61f02576b4cc1170789229beaa92feb89eba2269a0dbd7f07ccd6e7a152
7
- data.tar.gz: eb40bc9c321f6f1fa9f2ba3a4f14f9f831b4aefc23af251655b65dccb58ac838c9493fff8dcde7ec1de007015689627e1ffb4d9049bdd04c871cfb9f4b363bde
6
+ metadata.gz: 4373aff69d41d00c1533545927ace7b2ebc9ef0d93449483c5ff5cf0960cbb5d935b1f4f20d21fa00bc79c23d722cde6d4e31c2ad215f78a3a9cd8fc5cf000e9
7
+ data.tar.gz: 51773b55e7e9e51719e2c803294dba300ce7bbb9b1ab0ed5fa967313f204e3859943ab406c5228b7222e38ddc0296e80db8feba1622751f821e787a6b4b2ec4b
data/CHANGELOG.md CHANGED
@@ -3,6 +3,13 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  This project *loosely tries* to adhere to [Semantic Versioning](http://semver.org/), even before v1.0.
5
5
 
6
+ ## [2.2.3] - 2022-12-11
7
+ - [#283](https://github.com/boltops-tools/terraspace/pull/283) update terraspace new cli help
8
+ - [#285](https://github.com/boltops-tools/terraspace/pull/285) Only generate output files with content
9
+
10
+ ## [2.2.2] - 2022-09-14
11
+ - [#268](https://github.com/boltops-tools/terraspace/pull/268) custom config.build.dependency_words ability
12
+
6
13
  ## [2.2.1] - 2022-09-08
7
14
  - [#265](https://github.com/boltops-tools/terraspace/pull/265) import command
8
15
 
@@ -42,6 +42,7 @@ module Terraspace
42
42
  config.build.clean_cache = nil # defaults to true
43
43
  config.build.default_pass_files = ["/files/"]
44
44
  config.build.pass_files = []
45
+ config.build.dependency_words = []
45
46
 
46
47
  config.bundle = ActiveSupport::OrderedOptions.new
47
48
  config.bundle.logger = ts_logger
@@ -1,7 +1,7 @@
1
1
  ## Examples
2
2
 
3
- terraspace import aws_instance.this i-088a0a47e2e852cc8
4
- terraspace import module.vpc.aws_vpc.this vpc-000782e4951a734c7
3
+ terraspace import ec2 aws_instance.this i-088a0a47e2e852cc8
4
+ terraspace import vpc module.vpc.aws_vpc.this vpc-000782e4951a734c7
5
5
  terraspace import vpc module.vpc.aws_vpc.this vpc-000782e4951a734c7
6
6
 
7
7
  A general workflow is to use terraspace plan, inspect what resources, are missing and and import resources based on that. The `state list` command is also useful.
@@ -1,12 +1,12 @@
1
1
  ## Stack Examples
2
2
 
3
- $ terraspace new test demo --type stack
3
+ $ terraspace new test example --type stack
4
4
  => Creating stack test: example
5
- exist app/stacks/example
6
5
  create app/stacks/example/test/.rspec
7
6
  create app/stacks/example/test/Gemfile
8
- create app/stacks/example/test/spec/fixtures/stack/main.tf
9
- create app/stacks/example/test/spec/fixtures/stack/outputs.tf
7
+ create app/stacks/example/test/spec/fixtures/config/app.rb
8
+ create app/stacks/example/test/spec/fixtures/config/terraform/provider.tf
9
+ create app/stacks/example/test/spec/fixtures/tfvars/test.tfvars
10
10
  create app/stacks/example/test/spec/main_spec.rb
11
11
  create app/stacks/example/test/spec/spec_helper.rb
12
12
  $
@@ -15,11 +15,8 @@
15
15
 
16
16
  $ terraspace new test example --type module
17
17
  => Creating module test: example
18
- exist app/modules/example
19
18
  create app/modules/example/test/.rspec
20
19
  create app/modules/example/test/Gemfile
21
- create app/modules/example/test/spec/fixtures/stack/main.tf
22
- create app/modules/example/test/spec/fixtures/stack/outputs.tf
23
20
  create app/modules/example/test/spec/main_spec.rb
24
21
  create app/modules/example/test/spec/spec_helper.rb
25
22
  $
@@ -28,7 +25,6 @@
28
25
 
29
26
  $ terraspace new test my --type project
30
27
  => Creating test bootstrap structure
31
- exist
32
28
  create .rspec
33
29
  create spec/spec_helper.rb
34
30
  $
@@ -26,7 +26,10 @@ module Terraspace::Compiler::Erb
26
26
  def new_line(line)
27
27
  md = line.match(/.*(<% |<%=)/) || line.match(/.*<%$/)
28
28
  if md
29
- words = %w[output depends_on] # TODO: consider allowing user customizations
29
+ words = %w[output depends_on]
30
+ dependency_words = [Terraspace.config.build.dependency_words].flatten
31
+ words += dependency_words # custom user words to evaluated in first pass also
32
+ return line if words.include?('*') # passthrough for special case '*'
30
33
  # IE: <%= output or <% depends_on
31
34
  regexp = Regexp.new(".*<%.*#{words.join('|')}.*")
32
35
  if line.match(regexp)
@@ -34,7 +34,7 @@ module Terraspace::Compiler
34
34
  if content.respond_to?(:path) # IO filehandle
35
35
  FileUtils.cp(content.path, dest_path) # preserves permission
36
36
  else # just content
37
- IO.write(dest_path, content, mode: "wb")
37
+ IO.write(dest_path, content, mode: "wb") unless content.nil?
38
38
  end
39
39
  logger.debug "Created #{Terraspace::Util.pretty_path(dest_path)}"
40
40
  end
@@ -1,3 +1,3 @@
1
1
  module Terraspace
2
- VERSION = "2.2.1"
2
+ VERSION = "2.2.3"
3
3
  end
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: 2.2.1
4
+ version: 2.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tung Nguyen
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-09-08 00:00:00.000000000 Z
11
+ date: 2022-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -965,7 +965,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
965
965
  - !ruby/object:Gem::Version
966
966
  version: '0'
967
967
  requirements: []
968
- rubygems_version: 3.3.21
968
+ rubygems_version: 3.3.26
969
969
  signing_key:
970
970
  specification_version: 4
971
971
  summary: 'Terraspace: The Terraspace Framework'