Rails + Capistrano + Myrepono

Se você usa o Myrepono (myrepono.com) e o capistrano, deve saber que é uma grande dor na bunda configurar o myrepono em um projeto que usa capistrano, porque toda vez que você reimplanta seu aplicativo, ele destrói seus arquivos myrepono.

Eu descobri uma maneira brilhante de contornar isso.

A ideia

A ideia é que, se você colocar seu myrepono/na raiz do projeto, poderá criar um link simbólico de sua current/public/para a pasta myrepono.

Configuração do Myrepono

Adicione um novo domínio em myrepono e siga as instruções de instalação manual. No meu caso, meu diretório myrepono está localizado em /var/www/example.com/myrepono/.

Crie também um arquivo .htaccess neste local e coloque o seguinte conteúdo nele:

AddHandler php-script .php

A Tarefa Capistrano

# Creates a symlink to the myrepono directory which should sit at the project root
task
:symlink_myrepono, :roles => :app do
run
"cd #{current_path}/public; ln -s #{deploy_to}/myrepono/ myrepono"
end

O snippet que vai no final da sua receita de capistrano

after "deploy:install", "deploy:symlink_myrepono"

YAHTZEE !!!

Finalmente podemos ter projetos rails com backups myrepono!