Software delivery should be quick and easy. Otherwise, it is annoying to waste time collecting packages manually. Therefore, I would like to use SVN to send my rails project to a productive environment.
The idea is that the operational guys just have to check the source project by doing:
svn co https://my-server/vs/my-project/tags/1.0.0
Then these guys can change the appropriate files for the configuration settings in this local SVN workspace.
If a new version of the software is available, we simply distribute (in addition to README) its new version number, for example version 1.0.1. To upgrade a production machine, the operating group simply switches to the appropriate workspace by doing:
svn switch https:
(Of course, before performing the update, you need to stop the interruptions, and after the update you need to perform some migrations, etc.). I want to note that there is no need to deliver and retrieve the TAR balls and that the previous configuration settings are saved in place or will be merged with new configuration lines (well, this can lead to conflicts that need to be resolved).
Are there any (additional) flaws / traps? Do you have a better approach using SVN for software delivery?
Thanks in advance!
source share