Gatsby
In this guide, we will discuss how to set up a Gatsby 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!
To make integration faster the team at Onboardbase has released an open-source gatsby starter kit you can check it out here
Create a Gatsby Project
We would be deploying the demo version of the Gatsby project.
From anywhere comfortable in your terminal, run:
npm init gatsby
Change directory into the Gatsby App folder you just created
cd my-gatsby-site
Add a remote git URL.
git remote add origin [REMOTE_GIT_URL]
git push --set-upstream origin main
Finally, start the project with:
npm run develop
// or
yarn run develop
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 Gatsby 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 this 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 be using the build tool from Onboardbase to load secrets into the project.
To do this, modify your start script inside the package.json
instead of having this:
"scripts": {
"develop": "gatsby develop",
"start": "gatsby develop",
"build": "gatsby build",
"serve": "gatsby serve",
"clean": "gatsby clean"
}
To this:
"scripts": {
"develop": "onboardbase run --command=\"gatsby develop"",
"start": "onboardbase run --command=\"gatsby develop"",
"build": "onboardbase run --command=\"gatsby build"",
"serve": "onboardbase run --command=\"gatsby serve"",
"clean": "onboardbase run --command=\"gatsby clean""
},
Notice how we now use onboardbase run
to run the start and build process, instead of the base gatsby scripts.
To test this, start the development server with:
yarn run develop
Which should import all your Onboardbase projects
The secrets are available through: process.env.ENV_KEY_STORED_IN_ONBOARDBASE.
Awesome!
Updated 12 months ago