Provision is a command-line interface for quickly launching websites on any computer for development, testing, or production.
Provision is awesome because it's designed to work with any system and because it's written in PHP making it familiar to web developers.
Provision is stable because it comes from a long history of automating Drupal hosting within the Aegir Project.
The 4.x version is a total rewrite, based on Symfony Console and Robo components. We are working to make Provision a useful stand-alone command for managing any kind of web app.
How it Works
Provision works by abstracting the services needed by your web sites and by knowing how to configure the underlying services automatically. Once setup, you can add new sites simply by telling it a URL and the path to your source code.
For example, Provision knows that Drupal requires two services: a database server and a web server. Provision knows how to configure Apache, NGINX and Docker. It knows how to create a database and configure the permissions. It knows how to set file permissions.
You add your site's URLs and path to your source code using provision saveand run provision verify, and Provision does everything else for you to get a running website.
Provision 4.x is a work in progress. If you want open source Drupal hosting now, please see DevShop and the Aegir Project.
Provision, prior to the 4.x branch, was the "back-end" command line interface for the Aegir Hosting Project, implemented as a set of Drush commands. It was designed simply as a way to let the "front-end" website to run commands to automatically configure the web server.