kontena-cli 1.0.2.pre1 → 1.0.2.rc1
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/VERSION +1 -1
- data/kontena-cli.gemspec +1 -1
- data/lib/kontena/cli/stacks/yaml/reader.rb +23 -12
- metadata +5 -5
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: d958eccc9f62fd73f519d3ef624e62f0ab203c48
         | 
| 4 | 
            +
              data.tar.gz: 72a3d121bbefee09efd42a69e900dd33cf66d298
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 7ac1410618aaeaba33075e6c90a2b811137cbc7d566cba719eb90672ae12601e4f3a2e28e6f92989ce12d1a3f69980b8ee3ce6dcb7b6014b5ec9b1f9284dee9d
         | 
| 7 | 
            +
              data.tar.gz: 4a158c1741f8e53c04aa7651f6c8166a179add5f9eda122c46fd28743313bd7bb5cb2cf5aa9f6e8729554c0ae95c1df05e7a94ce05e5f2047b75a3eb45c0892b
         | 
    
        data/VERSION
    CHANGED
    
    | @@ -1 +1 @@ | |
| 1 | 
            -
            1.0.2. | 
| 1 | 
            +
            1.0.2.rc1
         | 
    
        data/kontena-cli.gemspec
    CHANGED
    
    | @@ -29,6 +29,6 @@ Gem::Specification.new do |spec| | |
| 29 29 | 
             
              spec.add_runtime_dependency "launchy", "~> 2.4.3"
         | 
| 30 30 | 
             
              spec.add_runtime_dependency "hash_validator", "~> 0.7.0"
         | 
| 31 31 | 
             
              spec.add_runtime_dependency "retriable", "~> 2.1.0"
         | 
| 32 | 
            -
              spec.add_runtime_dependency "opto", "1.5. | 
| 32 | 
            +
              spec.add_runtime_dependency "opto", "~> 1.5.3"
         | 
| 33 33 | 
             
              spec.add_runtime_dependency "semantic", "~> 1.5"
         | 
| 34 34 | 
             
            end
         | 
| @@ -44,7 +44,7 @@ module Kontena::Cli::Stacks | |
| 44 44 | 
             
                    return @variables if @variables
         | 
| 45 45 | 
             
                    if yaml && yaml.has_key?('variables')
         | 
| 46 46 | 
             
                      variables_yaml = yaml['variables'].to_yaml
         | 
| 47 | 
            -
                      variables_hash = ::YAML.load(replace_dollar_dollars(interpolate(variables_yaml)))
         | 
| 47 | 
            +
                      variables_hash = ::YAML.load(replace_dollar_dollars(interpolate(variables_yaml, use_opto: false)))
         | 
| 48 48 | 
             
                      @variables = Opto::Group.new(variables_hash, defaults: { from: :env, to: :env })
         | 
| 49 49 | 
             
                    else
         | 
| 50 50 | 
             
                      @variables = Opto::Group.new(defaults: { from: :env, to: :env })
         | 
| @@ -220,19 +220,30 @@ module Kontena::Cli::Stacks | |
| 220 220 |  | 
| 221 221 | 
             
                  ##
         | 
| 222 222 | 
             
                  # @param [String] text - content of YAML file
         | 
| 223 | 
            -
                  def interpolate(text)
         | 
| 224 | 
            -
                    text. | 
| 225 | 
            -
                       | 
| 226 | 
            -
                       | 
| 227 | 
            -
             | 
| 228 | 
            -
                        val
         | 
| 229 | 
            -
                      elsif @replace_missing
         | 
| 230 | 
            -
                        @replace_missing
         | 
| 223 | 
            +
                  def interpolate(text, use_opto: true)
         | 
| 224 | 
            +
                    text.split(/[\r\n]/).map do |row|
         | 
| 225 | 
            +
                      # skip lines that opto is interpolating
         | 
| 226 | 
            +
                      if row.strip.start_with?('interpolate:') || row.strip.start_with?('evaluate:')
         | 
| 227 | 
            +
                        row
         | 
| 231 228 | 
             
                      else
         | 
| 232 | 
            -
                         | 
| 233 | 
            -
             | 
| 229 | 
            +
                        row.gsub(/(?<!\$)\$(?!\$)\{?\w+\}?/) do |v| # searches $VAR and ${VAR} and not $$VAR
         | 
| 230 | 
            +
                          var = v.tr('${}', '')
         | 
| 231 | 
            +
             | 
| 232 | 
            +
                          if use_opto
         | 
| 233 | 
            +
                            val = variables.value_of(var) || ENV[var]
         | 
| 234 | 
            +
                          else
         | 
| 235 | 
            +
                            val = ENV[var]
         | 
| 236 | 
            +
                          end
         | 
| 237 | 
            +
             | 
| 238 | 
            +
                          if val
         | 
| 239 | 
            +
                            val.to_s =~ /[\r\n\"\'\|]/ ? val.inspect : val
         | 
| 240 | 
            +
                          else
         | 
| 241 | 
            +
                            puts "Value for #{var} is not set. Substituting with an empty string." unless skip_validation?
         | 
| 242 | 
            +
                            @replace_missing || ''
         | 
| 243 | 
            +
                          end
         | 
| 244 | 
            +
                        end
         | 
| 234 245 | 
             
                      end
         | 
| 235 | 
            -
                    end
         | 
| 246 | 
            +
                    end.join("\n")
         | 
| 236 247 | 
             
                  end
         | 
| 237 248 |  | 
| 238 249 | 
             
                  ##
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: kontena-cli
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1.0.2. | 
| 4 | 
            +
              version: 1.0.2.rc1
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Kontena, Inc
         | 
| @@ -140,16 +140,16 @@ dependencies: | |
| 140 140 | 
             
              name: opto
         | 
| 141 141 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 142 142 | 
             
                requirements:
         | 
| 143 | 
            -
                - -  | 
| 143 | 
            +
                - - "~>"
         | 
| 144 144 | 
             
                  - !ruby/object:Gem::Version
         | 
| 145 | 
            -
                    version: 1.5. | 
| 145 | 
            +
                    version: 1.5.3
         | 
| 146 146 | 
             
              type: :runtime
         | 
| 147 147 | 
             
              prerelease: false
         | 
| 148 148 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 149 149 | 
             
                requirements:
         | 
| 150 | 
            -
                - -  | 
| 150 | 
            +
                - - "~>"
         | 
| 151 151 | 
             
                  - !ruby/object:Gem::Version
         | 
| 152 | 
            -
                    version: 1.5. | 
| 152 | 
            +
                    version: 1.5.3
         | 
| 153 153 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 154 154 | 
             
              name: semantic
         | 
| 155 155 | 
             
              requirement: !ruby/object:Gem::Requirement
         |