Sha256: 479a9e55b416b8cfef5f60c65f64d36073641f156d9ddd6f5658d07c583e44ea

Contents?: true

Size: 1.09 KB

Versions: 1

Compression:

Stored size: 1.09 KB

Contents

Capistrano::Configuration.instance.load do

  namespace :deploy do
    desc <<-DESC
      Symlink shared directories and files.
    DESC
    task :symlink_dependencies, :roles => :web, :except => {:no_release => true} do
      shared_directories_to_link   = fetch(:shared_directories_to_link, [])
      directories_to_create        = fetch(:directories_to_create, [])
      files_to_delete              = fetch(:files_to_delete, [])
      files_to_link                = fetch(:files_to_link, {})
      chmods_to_set                = fetch(:chmods_to_set, [])

      directories_to_create.each        { |directory| run "mkdir -p #{directory}" }
      shared_directories_to_link.each   { |source, target| run "ln -s #{source} #{target}" }
      files_to_delete.each              { |file| run "rm #{file}" }
      files_to_link.each                { |source, target| run "ln -s #{source} #{target}"}
      chmods_to_set.each                { |target, chmod| run "chmod #{chmod} #{target}" }
    end
  end

  before 'deploy:finalize_update', 'deploy:symlink'
  after 'deploy:symlink', 'deploy:symlink_dependencies'

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ms_deploy-0.0.2 lib/ms_deploy/recipes/deploy/symlink.rb