Hello. I''ve looked around the net today for the nicely integrated into rails solution for rsync-based deployment but failed to find anything good enough so I''ve just moved on and create my own rake task. It allows to deploy applications to a number of different servers configured in config/rsync.yml file and supports exclusions listed as the plain text file in config/rsync_exclude.txt. Iniatilly I wanted to share this thing on rails'' wiki but the current page related to the same tasks seems to have some problems and previous posts on this maillist suggests that wiki doesn''t feel itself good nowdays because of all the spam. So if anyone is interested in this code - I can post it here in the maillist with relevant description. Does anyone need it? -- WBR, Oleg Ivanov ICQ #69991809 Jabber: morhekil-/eSpBmjxGS4dnm+yROfE0A@public.gmane.org --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk -~----------~----~----~----~------~----~------~--~---
I don''t need it, but I''m sure that at some point there will definitely be someone who searches this mailing list for something like this! You should post it ;) Good work, and thanks! -Ben Lisbakken --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk -~----------~----~----~----~------~----~------~--~---
Ok, so attached is the rake file that should be saved in the lib/tasks/ folder as usual. It provides a new rake task called "sync" that synchronizes the application''s RAILS_ROOT with the specified directory on remote server. It uses rsync running over ssh remote shell transport. To use this task you should first define the parameters of a remote servers in config/rsync.yml file. Let''s see an example: ------------ default_target: production production: host: test.server.net port: 22 user: tester dir: /home/tester/railsapp test: host: google.com user: root dir: /etc ------------ In the first line default_target defines a default sync target that will be used if no explicit target is given on the command line. Then all required servers are listed under their nicknames in the shown format. Parameters host, user and dir are required and port is optional. To run the task in the dry-run mode without actually forcing any changes on the remote server do: % rake sync It will give you back the rsync''s log. If you are sure that everything is fine and you want to actually deploy your app do: % rake sync goand every time you need to roll out your changes on the server - just type "rake sync go=" again and you''re done. In this form task uses default target set in your config file. If you want to deploy to any other server from you configuration add the argument "to": % rake sync to=test goOf course, you can skip "go" arg and do a dry run: % rake sync to=test And the last thing - if you don''t want some of your local directories to be synchronized (log, tmp, etc) you can list them in the config/rsync_exclude.txt file. The sample rsync_exclude.txt looks like: -------------- tmp log .svn *.swp -------------- Hope that will be helpful to someone, ask me if you have any problems/suggestions relates to this thing. PS: this task was hugely inspired by the similar task from Symfony PHP framework though improved a bit by me to be more convenient. -- WBR, Oleg Ivanov ICQ #69991809 Jabber: morhekil-/eSpBmjxGS4dnm+yROfE0A@public.gmane.org --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk -~----------~----~----~----~------~----~------~--~---
Hi. I was interested in looking at the rake task referred to in this post, but never could find it. I know this is an old topic, but if anyone else caught it, I''d appreciate it if you could forward or repost. Thx. -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.