All preview environments run on servers provisioned in your own AWS account.
Automatic SSL support is available with Let's Encrypt certificates.
Servers can be restricted to a specific set of source IP or IP ranges.
Your code never leaves GitHub's or your own servers. The whole workflow runs as a GitHub Action.
No maintenance, and cheap to run
Servers are automatically spinned up or down depending on your activity.
License fee starts at 10$/month, plus AWS servers costs.
Lightsail AWS servers start at 3.5$/month for 512MB RAM. Default instance type is 2GB at 10$/month. Since usage is prorated to the hour, the cost for each PR is usually very low.
Easy to manage
Environments can be started and destroyed by any team member, without any code change, by adding or removing the pullpreview label on your Pull Requests.
You can also set specific branches as always-on, for instance to continuously deploy your master branch (the page you're reading is deployed like this).
Persistent across deployments
Any state stored in docker volumes (e.g. database data) will be persisted across deployments, making the life of reviewers easier.
The docker build is also cached across deployments on the preview server, which means subsequent deployments are very fast.
Easy to troubleshoot
SSH access into the preview instances can be enabled for specific GitHub users to further troubleshoot any issue. The SSH keys that they use to push to GitHub will automatically be installed on the preview servers. No configuration required.
Fully integrated into GitHub
Live deployment logs are displayed in the Actions tab of your repository.
Direct links to the preview environments are displayed in the Checks section of a PR, and in the Deployments tab of your repository.