lib/capistrano/tasks/craft.rake in capistrano-craft-0.1.0 vs lib/capistrano/tasks/craft.rake in capistrano-craft-0.1.1

- old
+ new

@@ -1,21 +1,20 @@ namespace :craft do desc "Ensure folder permissions are correct" task :set_permissions do on release_roles(fetch(:craft_deploy_roles)) do - within release_path do - # https://docs.craftcms.com/v3/installation.html#step-2-set-the-file-permissions + # https://docs.craftcms.com/v3/installation.html#step-2-set-the-file-permissions - execute "chmod 744 .env" - execute "chmod 744 composer.json" - execute "chmod 744 composer.lock" - execute "chmod 744 config/license.key" - execute "chmod -R 744 storage/*" - execute "chmod -R 744 vendor/*" - execute "chmod -R 744 web/cpresources/*" - end + # Attempt to chmod but don't fail if these aren't setup + execute "chmod -f 744 #{fetch(:craft_remote_env)} || true" + execute "chmod -f 744 #{release_path}/composer.json || true" + execute "chmod -f 744 #{release_path}/composer.lock || true" + execute "chmod -f 744 #{release_path}/config/license.key || true" + execute "chmod -fR 744 #{release_path}/storage/* || true" + execute "chmod -fR 744 #{release_path}/vendor/* || true" + execute "chmod -fR 744 #{release_path}/web/cpresources/* || true" end end namespace :cache do task :clear do @@ -27,13 +26,13 @@ namespace :assets do desc "Synchronise assets between local and remote server" task :sync do run_locally do - on release_roles(fetch(:craft_deploy_roles)) do + release_roles(fetch(:craft_deploy_roles)).each do |role| puts "User -> " + role.user - execute :rsync, "-vzO #{role.user}@#{role.hostname}:#{shared_path}/web/assets/ web/assets" - execute :rsync, "-vzO web/assets/ #{role.user}@#{role.hostname}:#{shared_path}/web/assets" + execute :rsync, "-rvzO #{role.user}@#{role.hostname}:#{shared_path}/#{fetch(:assets_path)}/ #{fetch(:assets_path)}" + execute :rsync, "-rvzO #{fetch(:assets_path)}/ #{role.user}@#{role.hostname}:#{shared_path}/#{fetch(:assets_path)}" end end end end \ No newline at end of file