@snaplet/netlify-preview-database-plugin

2.0.0 • Public • Published

Netlify Preview Database Plugin

Create an isolated preview database for each preview deployment in Netlify

you branch?

Quickstart   •   Website   •   Docs   •   Discord   •   Twitter

This plugin gives you a new and isolated database for your preview deployments in Netlify. When a pull-request is created, a new database is created and seeded with a Snaplet snapshot. Giving you a database (with data) to test your branch without side-effects.

Usage

1. Install the plugin

2. Configure settings in your project repo

# netlify.toml

[[plugins]]
 package = "@snaplet/netlify-preview-database-plugin"

Note: We check the deploy context associated with the build. You can configure your settings by deploy context.

Inputs

- name: databaseCreateCommand
  required: false
  description: Command used to create the preview database
  default: "snaplet db create --git --latest"

- name: databaseDeleteCommand
  required: false
  description: Command used to delete the preview database
  default: "snaplet db delete --git"

- name: databaseUrlCommand
  required: false
  description: Command used to get the preview database url
  default: "snaplet db url --git"

- name: databaseUrlEnvKey
  required: false
  description: Preview database environment variable key
  default: "DATABASE_URL"

- name: reset
  required: false
  description: Reset the preview database state on each commit
  default: false

3. Set environment variables

  • In the Dashboard. Navigate to your site then Site settings > Environment Variables. Select Specific scopes and pick the Build option.

Note: To enable deploy contexts for environment variables in the Netlify Dashboard. Navigate to Netlify Labs > Scopes and Deploy Contexts for Environment Variables and click the enable button.

# netlify.toml

[[plugins]]
# ...

  [context.deploy-preview.environment]
  SNAPLET_ACCESS_TOKEN="<YOUR_SNAPLET_ACCESS_TOKEN>"

Required Environment variables

# Personal Access Token with "repo" scope, found in GitHub user settings
GITHUB_ACCESS_TOKEN=
# API Access token found in Netlify user settings
NETLIFY_ACCESS_TOKEN=
# CLI Access token found in Snaplet UI
SNAPLET_ACCESS_TOKEN=
# Project ID found in Snaplet project settings
SNAPLET_PROJECT_ID=

How it works

How it works

Netlify + Snaplet Preview Database + Snaplet Snapshots = Love.

Combining preview databases with Snaplet snapshots and Netlify preview deployments gives your team a consistent experience to evaluate your deployment's Environment Variables.

Each commit triggers a build in Netlify. Before the build starts, the plugin will create an preview database using your latest snapshot. Once the create command is done, we will inject the URL returned, into the environment variable, linked to your database (By default this variable is DATABASE_URL).

Once the pre-build step is executed successfully, your build will continue and a site will be deployed with the preview database.

Additional resources

https://docs.netlify.com/integrations/build-plugins/#manage-plugin-versions

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 2.0.0
    3
    • latest

Version History

Package Sidebar

Install

npm i @snaplet/netlify-preview-database-plugin

Weekly Downloads

3

Version

2.0.0

License

MIT

Unpacked Size

1.56 MB

Total Files

21

Last publish

Collaborators

  • avallete
  • jgoux
  • justinvdm
  • peter.pistorius