Sha256: 721878c67e300a406e255b9cbfeb66d6a574d8684f27ecbf17e338c81ce3578d

Contents?: true

Size: 608 Bytes

Versions: 5

Compression:

Stored size: 608 Bytes

Contents

module Stevenson
  module Template
    class Local < Base
      attr_reader :template_path, :options

      def initialize(template_path, options)
        @template_path, @options = template_path, options
      end

      def local_directory
        raise InvalidTemplateException.new("The given path is not a directory '#{template_path}'") unless File.directory?(template_path)

        @_local_directory ||= Dir.mktmpdir.tap do |dir|
          directories = [template_path, options[:subdirectory], '.'].compact

          FileUtils.cp_r File.join(*directories), dir
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
stevenson-2.5.0 lib/stevenson/templates/local.rb
stevenson-2.3.3 lib/stevenson/templates/local.rb
stevenson-2.3.2 lib/stevenson/templates/local.rb
stevenson-2.3.1 lib/stevenson/templates/local.rb
stevenson-2.2.2 lib/stevenson/templates/local.rb