Sha256: 3d63f45062d8b18a40809c64ac05e012b1e9387ebf37211e391ab269db3eb0ff

Contents?: true

Size: 699 Bytes

Versions: 4

Compression:

Stored size: 699 Bytes

Contents

module Perkins
  module Build
    autoload :Data,     'perkins/build/data'
    autoload :Script,   'perkins/build/script'
    #autoload :Services, 'perkins/build/services'
    autoload :Shell,    'perkins/build/shell'

    HOME_DIR  = '$HOME'
    BUILD_DIR = File.join(HOME_DIR, 'build')

    class << self

      def script(config, options = {})
        #config  = config.deep_symbolize_keys
        lang  = (config.language || 'ruby').downcase.strip
        const = by_lang(lang)
        const.new(config, options)
      end

      def by_lang(lang)
        name = lang.split('_').map { |w| w.capitalize }.join
        Script.const_get(name, false) rescue Script::Ruby
      end

    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
perkins-0.0.5 lib/perkins/build.rb
perkins-0.0.3 lib/perkins/build.rb
perkins-0.0.2 lib/perkins/build.rb
perkins-0.0.1 lib/perkins/build.rb