Some time ago I added the following line to my .zshrc (and .bashrc as well):
alias rs='rails server -b 0.0.0.0'
This gave me an easy to use and easy to remember way to start my rails server when working on a Ruby on Rails project. I have several of these two-word aliases spread across my configuration files and I love them.
But recently I started working on a project that uses Foreman to run the server and several other niceties. It has a very nice README file that explains how to configure and run Foreman, but I never configured it until a couple of weeks ago.
My new command to start this particular app is
but I keep using
rs since it's engraved in my muscle memory, and that's making me miss some awesome features of the development server.
So I finally decided to do it… I removed my
rs alias from my config and created an
rs command written in Bash that does what I need depending on the project.
Here's the script:
#!/bin/bash if [ -f .foreman ]; then foreman start else rails s -b 0.0.0.0 fi
It's tiny, but it helps big time. It checks if there is a .foreman file and in that case runs
foreman start. If the file is not there, it means that Foreman is not configured on that particular project and runs the old
rails s -b 0.0.0.0 instead.
Hope you like this trick.