Sha256: 054dd4edf220fd391f45cfc75dfeed1cd9420f6cc6c55f7e431f8fb220376b08

Contents?: true

Size: 1.06 KB

Versions: 5

Compression:

Stored size: 1.06 KB

Contents

# frozen_string_literal: true

require 'avm/apps/config'
require 'avm/self'
require 'avm/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

5 entries across 5 versions & 1 rubygems

Version Path
avm-tools-0.103.0 lib/avm/tools/runner/config/load_path.rb
avm-tools-0.102.2 lib/avm/tools/runner/config/load_path.rb
avm-tools-0.102.1 lib/avm/tools/runner/config/load_path.rb
avm-tools-0.102.0 lib/avm/tools/runner/config/load_path.rb
avm-tools-0.101.0 lib/avm/tools/runner/config/load_path.rb