terradactyl-terraform 1.7.0 → 1.8.1
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 +4 -4
 - data/CHANGELOG.md +18 -2
 - data/lib/terradactyl/terraform/commands/base.rb +1 -1
 - data/lib/terradactyl/terraform/commands/destroy.rb +12 -0
 - data/lib/terradactyl/terraform/commands/init.rb +12 -0
 - data/lib/terradactyl/terraform/planfile.rb +10 -0
 - data/lib/terradactyl/terraform/version.rb +1 -1
 - data/lib/terradactyl/terraform/version_manager/binary.rb +1 -1
 - data/lib/terradactyl/terraform/version_manager/downloader.rb +6 -2
 - data/lib/terradactyl/terraform/version_manager/package.rb +6 -2
 - metadata +2 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 414a5cd429ebeb337767f029ee5ffcaec14a61bbb471ae9dff8c063274d024be
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 8cbcace0c15a7da8f3e296c61550e64cee9a6e94cbd745ac30b45d93bb6318d9
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 8e189de12cfbe14a6fee652f46479b41af6de0631645242433ca319882518e6744d36213e0be01cd3284c9514c440d162c15d1f26f2132f468a87d2c8b47fa59
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 3679715a8b81dba0604aca3ab525f2b340233384320487e4fcba113479dd2b5446f8e1ffd69d0b7fbbec9d74ec2b84ff33f4292f30371c23de5e5457ac037496
         
     | 
    
        data/CHANGELOG.md
    CHANGED
    
    | 
         @@ -1,11 +1,27 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # CHANGELOG
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
      
 3 
     | 
    
         
            +
            ## 1.8.1 (2025-04-17)
         
     | 
| 
      
 4 
     | 
    
         
            +
            NEW FEATURES:
         
     | 
| 
      
 5 
     | 
    
         
            +
            * add support for using latest Terraform 1.x minor version without an explicit implementation
         
     | 
| 
      
 6 
     | 
    
         
            +
            * update init, planfile, and destroy commands (add Rev1_latest)
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
            BUG FIX:
         
     | 
| 
      
 9 
     | 
    
         
            +
            * fix downloading TF versions < 1.0 on `arm64` architectures
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
            ## 1.8.0 (2025-04-10)
         
     | 
| 
      
 12 
     | 
    
         
            +
            NEW FEATURES:
         
     | 
| 
      
 13 
     | 
    
         
            +
            * add support for Terraform version `~> 1.8.0`
         
     | 
| 
      
 14 
     | 
    
         
            +
            * update init, planfile, and destroy commands (add Rev1_08)
         
     | 
| 
      
 15 
     | 
    
         
            +
            * add Rev1_08 rspecs
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
       3 
17 
     | 
    
         
             
            ## 1.7.0 (2024-01-17)
         
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
       5 
     | 
    
         
            -
            *  
     | 
| 
      
 18 
     | 
    
         
            +
            NEW FEATURES:
         
     | 
| 
      
 19 
     | 
    
         
            +
            * add support for Terraform version `~> 1.7.0`
         
     | 
| 
      
 20 
     | 
    
         
            +
            * update init, planfile, and destroy commands (add Rev1_07)
         
     | 
| 
       6 
21 
     | 
    
         
             
            * add Rev1_07 rspecs
         
     | 
| 
       7 
22 
     | 
    
         | 
| 
       8 
23 
     | 
    
         
             
            ## 1.6.0 (2023-10-04)
         
     | 
| 
      
 24 
     | 
    
         
            +
            NEW FEATURES:
         
     | 
| 
       9 
25 
     | 
    
         
             
            * add support for Terraform version `~> 1.6.0`
         
     | 
| 
       10 
26 
     | 
    
         
             
            * update init, planfile, and destroy commands (add Rev1_06)
         
     | 
| 
       11 
27 
     | 
    
         
             
            * add Rev1_06 rspecs
         
     | 
| 
         @@ -6,7 +6,7 @@ module Terradactyl 
     | 
|
| 
       6 
6 
     | 
    
         
             
                  def calc_revision(version)
         
     | 
| 
       7 
7 
     | 
    
         
             
                    major, minor = version.split(/\.|-/).take(2)
         
     | 
| 
       8 
8 
     | 
    
         
             
                    major = major.to_i.zero? ? major : major + '_'
         
     | 
| 
       9 
     | 
    
         
            -
                    minor = minor.rjust(2, '0') # pad a single digit
         
     | 
| 
      
 9 
     | 
    
         
            +
                    minor = minor.nil? ? 'latest' : minor.rjust(2, '0') # pad a single digit unless not provided
         
     | 
| 
       10 
10 
     | 
    
         
             
                    ['Rev', major, minor].join
         
     | 
| 
       11 
11 
     | 
    
         
             
                  end
         
     | 
| 
       12 
12 
     | 
    
         | 
| 
         @@ -98,6 +98,18 @@ module Terradactyl 
     | 
|
| 
       98 
98 
     | 
    
         
             
                  end
         
     | 
| 
       99 
99 
     | 
    
         
             
                end
         
     | 
| 
       100 
100 
     | 
    
         | 
| 
      
 101 
     | 
    
         
            +
                module Rev1_08
         
     | 
| 
      
 102 
     | 
    
         
            +
                  module Destroy
         
     | 
| 
      
 103 
     | 
    
         
            +
                    include Terradactyl::Terraform::Rev015::Destroy
         
     | 
| 
      
 104 
     | 
    
         
            +
                  end
         
     | 
| 
      
 105 
     | 
    
         
            +
                end
         
     | 
| 
      
 106 
     | 
    
         
            +
             
     | 
| 
      
 107 
     | 
    
         
            +
                module Rev1_latest
         
     | 
| 
      
 108 
     | 
    
         
            +
                  module Destroy
         
     | 
| 
      
 109 
     | 
    
         
            +
                    include Terradactyl::Terraform::Rev015::Destroy
         
     | 
| 
      
 110 
     | 
    
         
            +
                  end
         
     | 
| 
      
 111 
     | 
    
         
            +
                end
         
     | 
| 
      
 112 
     | 
    
         
            +
             
     | 
| 
       101 
113 
     | 
    
         
             
                module Commands
         
     | 
| 
       102 
114 
     | 
    
         
             
                  class Destroy < Base
         
     | 
| 
       103 
115 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -95,6 +95,18 @@ module Terradactyl 
     | 
|
| 
       95 
95 
     | 
    
         
             
                  end
         
     | 
| 
       96 
96 
     | 
    
         
             
                end
         
     | 
| 
       97 
97 
     | 
    
         | 
| 
      
 98 
     | 
    
         
            +
                module Rev1_08
         
     | 
| 
      
 99 
     | 
    
         
            +
                  module Init
         
     | 
| 
      
 100 
     | 
    
         
            +
                    include Terradactyl::Terraform::Rev015::Init
         
     | 
| 
      
 101 
     | 
    
         
            +
                  end
         
     | 
| 
      
 102 
     | 
    
         
            +
                end
         
     | 
| 
      
 103 
     | 
    
         
            +
             
     | 
| 
      
 104 
     | 
    
         
            +
                module Rev1_latest
         
     | 
| 
      
 105 
     | 
    
         
            +
                  module Init
         
     | 
| 
      
 106 
     | 
    
         
            +
                    include Terradactyl::Terraform::Rev015::Init
         
     | 
| 
      
 107 
     | 
    
         
            +
                  end
         
     | 
| 
      
 108 
     | 
    
         
            +
                end
         
     | 
| 
      
 109 
     | 
    
         
            +
             
     | 
| 
       98 
110 
     | 
    
         
             
                module Commands
         
     | 
| 
       99 
111 
     | 
    
         
             
                  class Init < Base
         
     | 
| 
       100 
112 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -143,6 +143,16 @@ module Terradactyl 
     | 
|
| 
       143 
143 
     | 
    
         
             
                  end
         
     | 
| 
       144 
144 
     | 
    
         
             
                end
         
     | 
| 
       145 
145 
     | 
    
         | 
| 
      
 146 
     | 
    
         
            +
                module Rev1_08
         
     | 
| 
      
 147 
     | 
    
         
            +
                  class PlanFileParser < Rev012::PlanFileParser
         
     | 
| 
      
 148 
     | 
    
         
            +
                  end
         
     | 
| 
      
 149 
     | 
    
         
            +
                end
         
     | 
| 
      
 150 
     | 
    
         
            +
             
     | 
| 
      
 151 
     | 
    
         
            +
                module Rev1_latest
         
     | 
| 
      
 152 
     | 
    
         
            +
                  class PlanFileParser < Rev012::PlanFileParser
         
     | 
| 
      
 153 
     | 
    
         
            +
                  end
         
     | 
| 
      
 154 
     | 
    
         
            +
                end
         
     | 
| 
      
 155 
     | 
    
         
            +
             
     | 
| 
       146 
156 
     | 
    
         
             
                module Rev011
         
     | 
| 
       147 
157 
     | 
    
         
             
                  class PlanFileParser < Rev012::PlanFileParser
         
     | 
| 
       148 
158 
     | 
    
         
             
                    def checksum
         
     | 
| 
         @@ -16,8 +16,12 @@ module Terradactyl 
     | 
|
| 
       16 
16 
     | 
    
         
             
                    end
         
     | 
| 
       17 
17 
     | 
    
         | 
| 
       18 
18 
     | 
    
         
             
                    def fetch(url: self.url)
         
     | 
| 
       19 
     | 
    
         
            -
                       
     | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
      
 19 
     | 
    
         
            +
                      begin
         
     | 
| 
      
 20 
     | 
    
         
            +
                        @fh   = URI.parse(url).open
         
     | 
| 
      
 21 
     | 
    
         
            +
                        @path = @fh.path
         
     | 
| 
      
 22 
     | 
    
         
            +
                      rescue OpenURI::HTTPError => e
         
     | 
| 
      
 23 
     | 
    
         
            +
                        puts "Can't access #{url}", e.message
         
     | 
| 
      
 24 
     | 
    
         
            +
                      end
         
     | 
| 
       21 
25 
     | 
    
         
             
                      @fh
         
     | 
| 
       22 
26 
     | 
    
         
             
                    end
         
     | 
| 
       23 
27 
     | 
    
         | 
| 
         @@ -4,7 +4,7 @@ module Terradactyl 
     | 
|
| 
       4 
4 
     | 
    
         
             
              module Terraform
         
     | 
| 
       5 
5 
     | 
    
         
             
                module VersionManager
         
     | 
| 
       6 
6 
     | 
    
         
             
                  module Package
         
     | 
| 
       7 
     | 
    
         
            -
                    def architecture
         
     | 
| 
      
 7 
     | 
    
         
            +
                    def architecture(version = nil)
         
     | 
| 
       8 
8 
     | 
    
         
             
                      case value = RbConfig::CONFIG['host_cpu'].downcase
         
     | 
| 
       9 
9 
     | 
    
         
             
                      when /amd64|x86_64/
         
     | 
| 
       10 
10 
     | 
    
         
             
                        'amd64'
         
     | 
| 
         @@ -13,7 +13,11 @@ module Terradactyl 
     | 
|
| 
       13 
13 
     | 
    
         
             
                      when /^arm$/
         
     | 
| 
       14 
14 
     | 
    
         
             
                        'arm'
         
     | 
| 
       15 
15 
     | 
    
         
             
                      when /^arm64|aarch64/
         
     | 
| 
       16 
     | 
    
         
            -
                        ' 
     | 
| 
      
 16 
     | 
    
         
            +
                        if !version.nil? && version.start_with?('0.')
         
     | 
| 
      
 17 
     | 
    
         
            +
                          'amd64' # fall back to amd64 because no arm64 releases for TF versions < 1.0
         
     | 
| 
      
 18 
     | 
    
         
            +
                        else
         
     | 
| 
      
 19 
     | 
    
         
            +
                          'arm64'
         
     | 
| 
      
 20 
     | 
    
         
            +
                        end
         
     | 
| 
       17 
21 
     | 
    
         
             
                      else
         
     | 
| 
       18 
22 
     | 
    
         
             
                        raise "FATAL: Unsupported CPU arch, #{value}"
         
     | 
| 
       19 
23 
     | 
    
         
             
                      end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: terradactyl-terraform
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.8.1
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Brian Warsing
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: exe
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2024- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2024-04-19 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: rubyzip
         
     |