Sha256: fa8016bedb93bcb41fa8e11ac8bcf49c99c052d87a3ea9af3db05764054b58f2

Contents?: true

Size: 970 Bytes

Versions: 14

Compression:

Stored size: 970 Bytes

Contents

require 'fileutils'

module Roger::Release::Finalizers
  
  # Finalizes the release into a directory in target_path
  # 
  # The directory name will have the format PREFIX-VERSION
  #  
  class Dir < Base    
    # @option options :prefix Prefix to put before the version (default = "html")
    def call(release, options = {})
      if options
        options = @options.dup.update(options)
      else
        options = @options
      end

      name = [(options[:prefix] || "html"), release.scm.version].join("-")      
      release.log(self, "Finalizing release to #{release.target_path + name}")
      
      if File.exist?(release.target_path + name)
        release.log(self, "Removing existing target #{release.target_path + name}")
        FileUtils.rm_rf(release.target_path + name)
      end
      
      FileUtils.cp_r release.build_path, release.target_path + name
    end
  end
end

Roger::Release::Finalizers.register(:dir, Roger::Release::Finalizers::Dir)

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
roger-1.1.3 lib/roger/release/finalizers/dir.rb
roger-1.1.2 lib/roger/release/finalizers/dir.rb
roger-1.1.1 lib/roger/release/finalizers/dir.rb
roger-1.1.0 lib/roger/release/finalizers/dir.rb
roger-1.0.1 lib/roger/release/finalizers/dir.rb
roger-1.0.0 lib/roger/release/finalizers/dir.rb
roger-0.13.0 lib/roger/release/finalizers/dir.rb
roger-0.12.5 lib/roger/release/finalizers/dir.rb
roger-0.12.4 lib/roger/release/finalizers/dir.rb
roger-0.12.3 lib/roger/release/finalizers/dir.rb
roger-0.12.2 lib/roger/release/finalizers/dir.rb
roger-0.12.1 lib/roger/release/finalizers/dir.rb
roger-0.12.0 lib/roger/release/finalizers/dir.rb
roger-0.11.0 lib/roger/release/finalizers/dir.rb