also read - AWS isolated sandbox environments

More importantly, how do you control user access to these sandboxes? And what if your sandbox needed applications (say your own inhouse apps) hosted on it?

  • PROD and NON-PROD environments – Dev Test Labs for staging and development users – with built in policies around limits and quotas per user.

GCP -

Sometimes, all you need is a way for users to quickly spin up a compute engine (or app engine) instance - and tear it down. No other access is needed for these users. What are some ways you can accomplish quick sandbox spin up and tear down?

Option 1 -  Google App Engine

Google App Engine lets developers upload, build and serve web and mobile backends on Google's infrastructure (similar to Azure App Services or AWS' Elastic Beanstalk).

Option 2 - Buddy 

A popular alternative is Buddy (some highlights below).

  1. Buddy can create disposable environments for a variety of runtimes including java, asp.net, lamp...- for dev, staging, QA and clients previews.
  2. It delivers a working website for every branch.
  3. It also automates deployments to any server - including GCP compute engine VMs.

Buddy based Deployment to GCE (Google Compute Engine)

Example pipeline:

The project is Java/Maven. The application in the form of a .war file is uploaded to the GCE and restarted with an SSH script on every push to the repository:

buddy gcp sandbox

Buddy based Deployment to GAE (Google App Engine)

With Buddy, you can automate deployments to GAE using a dedicated file transfer action. Just like in previous actions, you can upload your package automatically on push to the selected branch or a wildcard pattern, on demand, or recurrently at a specific time.

Summary

Rapidly spinning up a sandbox with a ready to test application is a common cloud use case. Manually building sandboxes is time consuming and not feature rich. Tools such as buddy can provide you with automated sandbox generation as well as rich notification features around the process. They are cloud agnostic and can work with AWS,  Azure or GCP.