Sha256: 7e196b76254363d3c6734da5aec00c0ba9e72d02479f37d8f2d4742aba4b7e95

Contents?: true

Size: 1.06 KB

Versions: 4

Compression:

Stored size: 1.06 KB

Contents

# frozen_string_literal: true

require 'avm/apps/config'
require 'avm/self'
require 'avm/tools/core_ext'

module Avm
  module Tools
    class Runner
      class Config
        class LoadPath
          runner_with :help do
            desc 'Manipulate include path.'
            arg_opt '-p', '--push', 'Add a path.'
          end

          def run
            run_show
            run_add
          end

          private

          # @return [[EacCli::Config]]
          def config_node
            ::Avm::Apps::Config.current
          end

          def run_add
            parsed.push.if_present do |v|
              infov 'Path to add', v
              config_node.load_path.push(v)
              success 'Path included'
            end
          end

          def run_show
            infov 'Configuration path', config_node.url
            infov 'Paths included', config_node.self_loaded_nodes.count
            config_node.self_loaded_nodes.each do |loaded_node|
              infov '  * ', loaded_node.url
            end
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
avm-tools-0.106.0 lib/avm/tools/runner/config/load_path.rb
avm-tools-0.105.0 lib/avm/tools/runner/config/load_path.rb
avm-tools-0.104.0 lib/avm/tools/runner/config/load_path.rb
avm-tools-0.103.1 lib/avm/tools/runner/config/load_path.rb