In addition, a shared environment presents other challenges with versioning control and access to micro services needed for testing because each pull request (PR) requires a unique environment in order to validate a change. Sequential validation of PRs delays its release to production and, to make matters worse, if the PR fails in testing, the whole cycle starts again — consuming resources and time while increasing change failure rates and cost.
If you deploy multiple PRs or code changes simultaneously, you will indeed interfere with each other’s changes, so the current process is more sequential.
Sequential development processes delay releases and the organization loses on the opportunity cost of that change.
Similarly, the way pull requests and private branches are short-lived, the environment must only be for the lifecycle of your PR. The environment must be ephemeral. It must launch/start when needed and shut down once your PR is merged or a private branch is deleted.
Since the Roost environment is isolated and private to the developer and defined by a pull request, numerous PRs can be run in parallel. This avoids bottlenecks in QA helping to get releases shipped faster.
Simply stated: Parallel development increases your release efficiency and Roost ephemeral environments allows developers to do just that!
A Roost ephemeral environment is created specifically for a pull request. This is in complete contrast to legacy pre-production environments where every pull request is made to run on the same static environment. This increases the speed of a release as only the relevant dependencies are auto-provisioned and the application is tested against them. In addition stakeholders get preview URLs for final feedback before pull requests are merged.
The Roost platform:
The environment snapshot is available for future reference or if a replay is needed. The link to the snapshot can be attached to your existing ticketing system.