Statische Verzeichnisse nach Deployment
Aug 2007
29
Eingetragen von Martin Maciaszek
Da ich gerade so richtig im Schwung bin mit Capistrano, hier noch ein Paar Tasks, welche beim deploy:setup und deploy:cold sowie deploy zusätzliche Verzeichnisse in die Anwendung symlinken. Im Code ist es beispielsweise ein Upload-Verzeichnis, was nach jedem Deployment erhalten bleiben sollte. Die Verzeichnisse lassen sich bequem per :common_dirs konfigurieren.
set :common_dirs, ['public/uploads']
namespace :deploy do
desc "symlink additional directories on server"
task :symlink_more do
unless fetch(:common_dirs, []).empty?
fetch(:common_dirs).each do |dir|
run "rm -rf #{release_path}/#{dir} &&\
ln -nfs #{shared_path}/#{dir} #{release_path}/#{dir}"
end
end
end
desc "Prepares additional directories on server for deployment"
task :setup_more do
unless fetch(:common_dirs, []).empty?
dirs = fetch(:common_dirs).map { |d| File.join(shared_path, d)}
run "umask 02 && mkdir -p #{dirs.join(' ')}"
end
end
after "deploy:finalize_update", "deploy:symlink_more"
after "deploy:setup", "deploy:setup_more"
end

auf del.icio.us speichern
zu Mister Wong hinzufügen