Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Ruby On Rails - Application Setup Guide

This setup will cover a pure, monolithic Rails Applications. This is the most frequent type of application we have at Renuo and is probably also the easiest to setup. The application (and relative GitHub repo) will be named after the [project-name] you chose before.

Note

Have you chosen a [project-name] yet? If not, please do so now. Check our Naming Conventions

Note

Have you decided if you need two environments (develop and main) or just one? As a rule of thumb: for customers we always use two environments, for internal projects we usually only use one. Why the difference? Because we can bare the risk of having a bug in an internal project, but we cannot do that for a customer. Decide with your team if you want one or two branches.

:bulb: Tip: Sections marked with ✨ are already set up by the Renuo Rails template or ship with Rails 8.1 by default. You only need to verify them, not install them.


Step 1: Create the App

  1. Initialise the Rails Application
  2. Push to Git Repository
  3. Initialise Gitflow
  4. Configure Github Repository

Step 2: Deploy the App

  1. Create an Application Server for Deploio or Create an Application Server for Heroku
  2. Configure the CI / CD

Once here, your app should be up and running on all environments.

Step 3: Quality Tools

It’s now time to introduce some more tools which will help you and the team to keep a high quality during the project development.

  1. RSpec
  2. Linting and automatic checks
  3. Gems and libraries :gem:
  4. Cloudflare

:tada: Finally you are ready to start working on you new project! :tada:

Step 4: Monitoring & Protection

While everyone starts working there are some more things which you should setup. Most are not optional, but the rest of the team can start working even if those are not in place yet.

  1. AppSignal
  2. Sentry (optional)
  3. NewRelic (optional)
  4. robots.txt
  5. Percy (optional)
  6. Protect develop environment

Step 5: Customer Plan Services

Bookmark the project on Redmine and configure the services listed there.

  1. Uptimerobot
  2. Sentry notifications, if requested
  3. Depfu security monitoring
  4. Papertrail alerts, if requested

Guides & Recipes

The following are not part of the sequential setup. Use them as needed for your project.