The as-a-service model evolved when SalesForce's "not a software" model (SaaS) met Amazon-Web-Service's Cloud Storage and Compute (IaaS & PaaS). When I wrote about the evolution of as-a-service in Techcrunch over five years back, I did not realize that I would be promoting the next level of abstraction in the same series five years down the line, i.e., Environments-as-a-Service or EaaS. I would instead call it a gap fill that emerged with everything around pre-production environments being standardized, but these environments are still being created in wild-west, bespoke fashion.


What is an environment anyway?

Before defining an environment, let us start with defining what an environment is not. Let us use the metaphor of a house to make it even easier. 


An environment is not:

Not Wood, Concrete, & Steel reinforcement: Infrastructure as Code 

Infrastructure as code or IaC has become mainstream in the last few years. In the public cloud world approach of "your wish is my command," all you need is a good wish list (configuration as code), and the cloud creates infrastructure. Creating good infrastructure in an agile way is essential and is akin to putting foundation, walls, roofs, doors, etc., in the house. It provides a solid foundation and protects the home from elements. It does not offer a "warm and cozy environment" for residents to live in. 

Leading examples of IaC platforms: Hashicorp Terraform and CloudFormation 

Not Residents: Code and Services

In the cloud-native world, code converts into images that get life in containers. These containers and images need to be created in the right way and protected correctly. For example, an image not being created using a multi-stage build is a recipe for disaster. In the same way, a container running as root is also a recipe for disaster. 

Leading houses for code to reside-in are: GitHub, GitLab & BitBucket
Containers reside in: DockerHub, Elastic Container Registry, JFrog Artifactory, etc. 


An environment is:

The air-conditioning & furnishings: Environment as a Service 

An environment is a gap that needs to be filled for a resident to have a comfortable and pleasant experience in the house.

what is an environment as a service



In technical terms:

An environment as a service is a space where teams can experience & interact with shareable & testable applications crafted using configuration, infrastructure & dependent services.

EaaS is a way of delivering development infrastructure and services to run an application in an on-demand ephemeral environment. It removes the burden of creating custom scripts and managing complex software in order for developers to create a pre-production environment.



Roost EaaS Platform

Roost is an “Environments as a Service” platform that creates instant and ephemeral environments which automatically validates applications allowing developers to spot potential errors before a pull request is merged. 

With Roost, developers effortlessly create pre-production environments either at pull request, feature branch or any custom insertion point. Once created, a Roost environment can be shared with other stakeholders who validate their deliverable using their own criteria.

Sign up for a live demo to see how Roost lets you move fast and deliver better products, with the autonomy to instantly create ephemeral and production-like environments on-demand or download our white paper: Advantages of Ephemeral Environments.


Banner Ad_Free Trial-blue

Rishi Yadav

About Rishi Yadav

Rishi is the CEO and Co-Founder of Roost and has over two decades of experience in leading enterprise application teams. He is a published author and active blogger.

Please Share this Blog

You may find these blog posts of interest too.

How to Create Automated Test Environments with EaaS Platforms
How to Create Automated Test Environments with EaaS Platforms
March 7, 2022

Testing is an integral part of any DevOps release cycle and many continuous integration (CI) tools have “run tests” as o...

Evolution of the Site Reliability Engineer
Evolution of the Site Reliability Engineer
March 7, 2022

Invention & Innovation Spreads Any invention at a hyperscaler first gets adopted by (relatively) smaller technology ...

Ephemeral Test Environment Improve the Functionality of a Pull Request
Ephemeral Test Environment Improve the Functionality of a Pull Request
March 7, 2022

What is a Pull Request? In its simplest form, a pull request is a mechanism that allows a developer to notify other deve...