Sha256: 8150a3ef8002ae1500243a4400b133b4a7cf6cd6f2af0ab032e1f08a1ecf2fbb

Contents?: true

Size: 1.01 KB

Versions: 82

Compression:

Stored size: 1.01 KB

Contents

require 'pathname'

module Docman
  class CreateSymlinkCmd < Docman::Command

    register_command :create_symlink

    def validate_command
      raise "Please provide 'target_dir' param" if self['target_dir'].nil?
      raise "Please provide 'context'" if @context.nil?
      raise "Context should be of type 'Info'" unless @context.is_a? Docman::Info
      raise "Directory #{File.join(@context['docroot_config'].docroot_dir, self['target_dir'])} not exists" unless File.directory? File.join(@context['docroot_config'].docroot_dir, self['target_dir'])
    end

    def execute
      source_path = File.join(@context['docroot_config'].docroot_dir, self['target_dir'])
      Dir.chdir source_path
      source_pathname = Pathname.new source_path
      target_pathname = Pathname.new @context['full_build_path']
      relative_path = target_pathname.relative_path_from source_pathname
      `ln -f -s #{relative_path} .`
      log "Created symlink in #{source_path} dir: '#{@context['name']}' to '#{relative_path}'"
    end
  end
end

Version data entries

82 entries across 82 versions & 1 rubygems

Version Path
docman-0.0.47 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.46 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.45 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.44 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.43 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.42 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.41 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.40 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.39 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.38 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.37 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.36 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.35 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.34 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.33 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.32 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.31 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.30 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.29 lib/docman/commands/create_symlink_cmd.rb
docman-0.0.28 lib/docman/commands/create_symlink_cmd.rb