Capistrano bez SCM-a

Wiecie może jak użyć Capistrano do wdrożenia aplikacji na serwer, na którym nie ma zainstalowanego SCMa?

Ręce mi opadają, ale nie można z jakiegoś powodu doinstalować Gita po prostu.

OMG! Może http://github.com/vigetlabs/capistrano_rsync_with_remote_cache ?

Hardcore :smiley:

Zobacz tutaj: http://github.com/capistrano/capistrano/blob/master/lib/capistrano/recipes/deploy/scm/none.rb

Możesz zaimplementować swojego własnego scma, typu ftp, albo :download_tar_gz_from_github czy coś takiego :wink:

Dawno temu uzywalem Capistrano do deployowania aplikacji PHP na serwer bez SCMa, config wyglada tak (i jakos dzialal :P):

[code]default_run_options[:pty] = true

set :application, “example”
set :deploy_to, “.”
set :current_path, “htdocs”
set :user, ‘example’
set :use_sudo, false
set :keep_releases, 5
set :copy_exclude, [".git", “.gitignore”]

role :web, “ssh.example.com
role :app, “ssh.example.com

set :scm, :none
set :repository, “.”
set :deploy_via, :copy

namespace :deploy do
task :start do
end

task :stop do
end

task:finalize_update do
end

task:restart do
end

task :after_deploy do
run “chmod -R 700 ./htdocs/config ./htdocs/Capfile”
run “find . -name ‘._*’ | xargs rm”
end
end[/code]

Wow, dzięki – może się kiedyś przydać! // git działa, uff!

rsync jest prawie wszędzie, przynajmniej powinien na każdym sensownym serwerze. To starczy.

Sensowna komenda dla rsync, jak ktoś nigdy nie używał to coś takiego

rsync -avz --progress /z /do

i tyle. (Progress mozna pominać oczywiście)

to samo można powiedzieć o gicie :wink: