You’re using CI? Great! You are not? It’s perfect time to start ;-).
Continuous integration (along with continuous deployment) is pretty simple and pretty awesome idea. Can basic setup where you simply run tests, and assuming tests passed whole thing gets deployed into production server(s) be done better?
Lately I gave some thought to the whole deployment process in our company. The whole development process in fact. I think todays web development got soooo complicated when compared what it was few years ago. The scale is just much bigger, everything is bigger, you operate on much more data, you use smarter tools that allows you to do more with less, but at the same time the amount of moving parts is higher and it seems easier to break.
That’s why you automate. Here are some tools that we added to out CI pipeline few weeks ago:
erb-linter - assuming you don’t have 100% feature/view spec coverage it might be a good idea to simply check your erb files for possible typos
slim-lint - same thing for slim, even integrates with rubocop nicely
Speaking of rubocop - setting custom instance of hound worked great for us (with keeping coding style consistent and catching little things like unused arguments and such).
Those small additions can make your live a little bit better ;).