Ruby On Rails

In this guide, we will discuss how to setup a Ruby on Rails project, that uses Onboardbase to manage its secrets(environment variables)

📘

This section assumes you already have a project set up in Onboardbase Dashboard. If you don't, please create an account and get started!

Create a Rails Project

From anywhere comfortable in your terminal, run:

// Create a rails project 
rails new myapp

Then, change the directory to the project folder cd myapp and add a remote git URL.

git remote add origin [REMOTE_GIT_URL]

git push --set-upstream origin main

Finally, start the project with:

bin/rails server

Install Onboardbase CLI

Follow the installation guide to set up Onboardbase CLI for your machine.

Verify installation with onboardbase --version which would output the version of the CLI you just installed.

Authenticate Onboardbase CLI

From anywhere in your terminal, run onboardbase login, and accept to open the page in a browser.

On the authorization page, enter your email, and a confirmation link would be sent to the email. Click on the link, and your CLI should be authorized. Check your terminal to confirm.

Setup Onboardbase CLI

After successful installation, from the Rails Project directory in your terminal, run:

onboardbase setup

This would list all your projects, select the react project, select the development environment and accept to add .onboardbase.yaml to your .gitignore file.

This would create an .onboardbase.yaml file that has all the details you selected during the setup and that would be used by the build script to know which secrets to pull into your react project.

Building with Onboardbase CLI

Since we have all our secrets on Onboardbase, we would use the build tool from Onboardbase to load secrets into the project.

To do this, you would have to change your start command from

bin/rails server

To this:

onboardbase run -c 'bin/rails server'

Notice how we now use onboardbase run to run the start and build process instead of the base command.

The secrets are available through: ENV['SECRET_NAME']

Awesome!