terradactyl 0.15.2 → 1.1.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a988ff3b16d74047633cd66e066673cd2fdf761557939a24bc7a234b0bb26920
4
- data.tar.gz: ab15b45df02d228d06a1ede2330048b613b4fb602436020c073d48e2da778b1a
3
+ metadata.gz: 3e90e3ed91939d1b785c16b83ed60b7a898504094f52e986753fb428aad01d8b
4
+ data.tar.gz: b690d9c3d25f80a0d3a749793cb374f4b130d86f350fdd6488934fda5bfba91b
5
5
  SHA512:
6
- metadata.gz: dfd2683371ff4d31f7ba907f6ea497fda420cd8ab5644b32a5efacc2cf6176bfca30c138c679f94e221e30fb8f76c6f06c59b4a7e027762835688894a5d75323
7
- data.tar.gz: 36d4db1bc332ed25196a1cf43c31b933397be36764d44bb6521e87fbfd2f173334f5c438046eddb08cdb1923b9cf3b2c92a015f4efd0b1645e2e0cdc29307a63
6
+ metadata.gz: 994d7dedb38c450899799fbac43bb3ecdd8992c09a0281ab94e8d60648a4d3235c488534f309ddc396590eb833092a2540ded2f384f134d0ebd48c2b147b679b
7
+ data.tar.gz: 83f2420863792854be2bee4ab32bec5041a818cd149741b24f2001ac16159892344715c5ee3339a58ae352d60a120adb430c1000e018242b26b261f986cc9400
data/.rubocop.yml CHANGED
@@ -10,6 +10,8 @@ Metrics/CyclomaticComplexity:
10
10
  Max: 10
11
11
  Metrics/ClassLength:
12
12
  Max: 115
13
+ Naming/ClassAndModuleCamelCase:
14
+ Enabled: false
13
15
  Naming/UncommunicativeMethodParamName:
14
16
  MinNameLength: 2
15
17
  Style/IfUnlessModifier:
data/CHANGELOG.md CHANGED
@@ -1,5 +1,46 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 1.1.2 (2021-01-05)
4
+
5
+ BUG FIX:
6
+
7
+ * Align with changes to terradactyl-terraform (v1.1.2)
8
+
9
+ ```
10
+ /var/lib/gems/2.7.0/gems/terradactyl-1.1.0/lib/terradactyl/stack.rb:73:in `block in setup_terraform': undefined method `downloads_url=' for Terradactyl::Terraform::VersionManager:Module (NoMethodError)
11
+ ```
12
+
13
+ ## 1.1.0 (2021-12-09)
14
+
15
+ NEW FEATURES:
16
+
17
+ * add support for Terraform version '~> 1.1.0`
18
+
19
+ DEPENDENCIES:
20
+
21
+ * update depends on terradactyl-terraform to '>= 1.1.0'
22
+
23
+ UPGRADEABLE:
24
+
25
+ * set '~> 1.0.0` as upgradeable
26
+
27
+ ## 1.0.0 (2021-06-09)
28
+
29
+ NEW FEATURES:
30
+
31
+ * add support for Terraform version `~> 1.0.0`
32
+
33
+ BUG FIXES:
34
+
35
+ * fix bad test matrix
36
+
37
+ ## 0.15.3 (2021-05-14)
38
+
39
+ BUG FIXES:
40
+
41
+ * fix `auto-approve` on `destroy` subcommand for Terraform version 0.15
42
+ * update all tests to use latest minor rev
43
+
3
44
  ## 0.15.2 (2021-05-02)
4
45
 
5
46
  NEW FEATURES:
@@ -98,8 +98,8 @@ module Terradactyl
98
98
  end
99
99
 
100
100
  def revision_constant(tf_version)
101
- revision_name = ['Rev', *tf_version.split('.').take(2)].join
102
- const_get(revision_name)
101
+ revision = Terradactyl::Terraform.calc_revision(tf_version)
102
+ const_get(revision)
103
103
  end
104
104
  end
105
105
 
@@ -387,6 +387,38 @@ module Terradactyl
387
387
  Terraform::Rev015::PlanFileParser
388
388
  end
389
389
  end
390
+
391
+ module Rev1_00
392
+ class << self
393
+ def upgradeable?
394
+ false
395
+ end
396
+ end
397
+
398
+ include Terraform::Commands
399
+
400
+ private
401
+
402
+ def parser
403
+ Terraform::Rev1_00::PlanFileParser
404
+ end
405
+ end
406
+
407
+ module Rev1_01
408
+ class << self
409
+ def upgradeable?
410
+ false
411
+ end
412
+ end
413
+
414
+ include Terraform::Commands
415
+
416
+ private
417
+
418
+ def parser
419
+ Terraform::Rev1_01::PlanFileParser
420
+ end
421
+ end
390
422
  end
391
423
  # rubocop:enable Metrics/ModuleLength
392
424
  end
@@ -26,7 +26,7 @@ module Terradactyl
26
26
  input: false
27
27
  destroy:
28
28
  parallelism: 5
29
- force: true
29
+ auto_approve: true
30
30
  environment:
31
31
  TF_PLUGIN_CACHE_DIR: ~/.terraform.d/plugins
32
32
  misc:
@@ -177,14 +177,20 @@ module Terradactyl
177
177
  private
178
178
 
179
179
  def terraform_required_version
180
- matches = TERRAFORM_SETTINGS_FILES.map do |file|
180
+ matches = TERRAFORM_SETTINGS_FILES.each_with_object([]) do |file, memo|
181
181
  path = File.join(stack_path, file)
182
- if File.exist?(path)
183
- File.read(path).match(Common.required_versions_re)
182
+ next unless File.exist?(path)
183
+
184
+ File.readlines(path).each do |line|
185
+ next if line =~ /(?:\s*#\s*)/
186
+
187
+ if (match = line.match(Common.required_versions_re))
188
+ memo << match
189
+ end
184
190
  end
185
191
  end
186
192
 
187
- return {} unless matches.compact!.any?
193
+ return {} unless matches.any?
188
194
 
189
195
  {
190
196
  'terradactyl' => {
@@ -69,7 +69,7 @@ module Terradactyl
69
69
  end
70
70
 
71
71
  def setup_terraform
72
- %i[install_dir downloads_url releases_url].each do |opt|
72
+ %i[install_dir releases_url].each do |opt|
73
73
  Terraform::VersionManager.send("#{opt}=".to_sym,
74
74
  config.terraform.send(opt))
75
75
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Terradactyl
4
- VERSION = '0.15.2'
4
+ VERSION = '1.1.2'
5
5
  end
data/terradactyl.gemspec CHANGED
@@ -33,7 +33,7 @@ Gem::Specification.new do |spec|
33
33
  spec.add_dependency 'deep_merge', '~> 1.2'
34
34
  spec.add_dependency 'bundler', '>= 1.16'
35
35
  spec.add_dependency 'rake', '>= 10.0'
36
- spec.add_dependency 'terradactyl-terraform', '>= 0.15.0'
36
+ spec.add_dependency 'terradactyl-terraform', '>= 1.1.0'
37
37
 
38
38
  spec.add_development_dependency 'rspec', '~> 3.0'
39
39
  spec.add_development_dependency 'pry', '~> 0.12'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: terradactyl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.2
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian Warsing
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-05-02 00:00:00.000000000 Z
11
+ date: 2022-01-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -100,14 +100,14 @@ dependencies:
100
100
  requirements:
101
101
  - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: 0.15.0
103
+ version: 1.1.0
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - ">="
109
109
  - !ruby/object:Gem::Version
110
- version: 0.15.0
110
+ version: 1.1.0
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rspec
113
113
  requirement: !ruby/object:Gem::Requirement