docs

Flow Preview Environments

Easily create a first class PR preview environment experience within Flows

Overview

Preview environments are a powerful software testing pattern in which you create a near clone of a dev environment running a feature branch's code for the duration of a pull request. This has a few great benefits:

  1. Reduces churn in your dev environment, improving overall stability - a common failure point in large organizations with many in-flight changes
  2. Makes it easier to test code in isolation - the code only has the changes in your branch
  3. Reduces dev data corruption issues - if you implement database forking as part of the preview, making it easy to test things like schema migrations

This is extremely easy to implement with Plural for a few reasons:

  • GitOps patterns make it easy to redeploy and reconfigure services
  • Plural already natively implements the webhook and event system to track PR updates within its server
  • Plural already has a secure way of managing SCM credentials, so it can natively implement GitHub/GitLab comment feedback for an ideal DevEx around preview environments

Demo Video

If you want to see it in action, here's a quick YouTube video demo:

How to Implement

Implementing preview environments is quite simple. You only need to register one custom resource, a PreviewEnvironmentTemplate like the one below: