Reploy creates a unique staging or "preview" environment for every pull request. After just a few commands and clicks of setup, we’ll deploy your environment on every Pull Request with a fully managed link!
In most engineering/product teams today, the staging environment is often a blocker when trying to get product out of the door. Whether it's waiting for changes to be seen in staging or lack of clarity regarding what production changes will look like, it can be hard to manage changes before a proper production release.
Reploy solves this problem by spinning up ephemeral staging environments on every commit. We're able to do this very quickly by caching previous runs and we handle the garbage collection of environments when they're not being used.
Beyond that, setup is extremely easy and requires almost no effort on your end. All we need are the commands you use in your dev environment, and we're off to the races 😃.
On Github, this is what it looks like:
To setup Reploy, all that's required is a
reploy.yml at the root of your repository. This file describes your environment i.e. the services in your web application stack.
For our project at github.com/getreploy/fullstack-sample the file looks like this:
services:backend:port: 5000image: ./Dockerfilebuild:- cd backend- go build -o reployserve:- ./reployfrontend:port: 3000** runtime: nodejsbuild:- cd frontend- npm install- npm run buildserve:- npx serve build/ -l 3000env:frontend: something.comredis:port: 6379image: redispostgres:port: 5432image: reploy/postgres:v1
As you can see, all that's required are your
services and their respective
serve commands. To learn more about the file specification, take a look: