These days I am working on a frightening task, a major update of a Rails project (3.2 to 4.2).
I wanted to write a post with the little tricks I am adopting to keep this task as simple as possible; but I found a very good article that explains most of them: How to make your next Rails upgrade easier
The only addition I can make to this post is the suggestion to use Docker, with docker-compose, to have a completely new environment where you can fearlessly play around with changes and updates.
Last but not least, in my case the target project doesn’t have a real test suite that can be reliable. So now, before doing the real upgrade, I am adding some functional tests that cover the main parts of the site. This way I can be more confident that all works well.
I hope you found the article helpful as I did.
See you soon!