Environments

Environments in Forest Admin allow you to switch context:

  • different set of data

  • different layout configuration

Setup with 2 environments: Development and Production

Creating a new environment

To create a new environment, go to your Project settings (1):

Then from the Environments tab, click on "+ New test environment" (2).

Fill out the 2 fields and click "Saves changes" (3).

Lastly, you need to copy your environment secret to your .env file as follows:

FOREST_ENV_SECRET=2b54ca2d2290b2b32c548b47c12321...

When you've connected at least once on your new environment, the yellow warning message will disappear.

Your .env file also contains a FOREST_AUTH_SECRET: it is a private token - chosen by yourself - used to sign the data token and protect your Admin backend.

Your .env file should not be versioned, as it depends on the environment.

Deploying to Production

Forest Admin is meant to help you manage your operations: this can only happen if you work with your Production data! To do so, you need to create your Production environment.

Click "Deploy to production" on the top banner or the Environments tab of your Project settings.

Deploying is a 3-step process:

  • Deploy your code to a remote server

  • Set DATABASE_URL, FOREST_ENV_SECRET and FOREST_AUTH_SECRET as environment variables

    • DATABASE_URL : use this syntaxdialect://user:password@host:port/dbname

  • Enter that remote server's url in the Application URL field and click Verify

See how we do it step-by-step on Heroku or on a standard ubuntu server.

Developing in Forest Admin

Developing in Forest Admin depends on your level of expectations:

The light & quick process

  • Make your UI changes directly in Production

  • Smart features which require code updates in your Admin backend can be developed in a Dev environment, then pushed to Production.

The safe & controlled process

Paul - a developer in your organization - is in charge of implementing a new Smart Action for the Operations team:

  • Since he wants to work from the existing layout of the Operations team, he retrieves it to his own environment "Dev - Paul":

    • From the Environments tab of the Project settings, he copies the layout configuration of the Production environment to his own environment: Dev - Paul

    • From the Teams tab, he copies the layout configuration of the Operations team to his own team (ie: Technical team)

  • He works locally on his "Dev - Paul" environment until the Smart Action is functional

  • At this point, he can deploy (his code) to production or to a testing environment (ie: staging) depending on his team's process