Sha256: 493eb2d0bf944fb30e100d5f221bbe870901d9544fe1ca386e96648d9f10ae9c

Contents?: true

Size: 945 Bytes

Versions: 2

Compression:

Stored size: 945 Bytes

Contents

namespace :load do
  task :defaults do
    set :owned_by_user, 'app'
    set :owned_by_group, 'deploy'
    set :release_paths_to_be_owned_by_app, '.'
    set :shared_paths_to_be_owned_by_app, '.'
  end
end

# For our rails applications, the actual ruby code is run
# by a different user than our deploy user. We want to make sure the directory
# permissions are set appropriately
namespace :deploy do
  task :set_app_ownership do
    on release_roles(:all) do
      within release_path do
        paths = Array(fetch(:release_paths_to_be_owned_by_app)).join(' ')
        sudo "chown -R #{fetch(:owned_by_user)}:#{fetch(:owned_by_group)} #{paths}"
      end
    end
    on release_roles(:all) do
      within shared_path do
        paths = Array(fetch(:shared_paths_to_be_owned_by_app)).join(' ')
        sudo "chown -R #{fetch(:owned_by_user)}:#{fetch(:owned_by_group)} #{paths}"
        sudo "chmod g+w -R #{paths}"
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
elocal_capistrano-2.3.5 lib/tasks/deploy.rake
elocal_capistrano-2.3.4 lib/tasks/deploy.rake