-
Aim for stability.
-
Aim for consistency across providers (e.g. VirtualBox, AWS) and interfaces (e.g. CLI / API).
-
Aim for easy repurposing and ease of use.
-
Aim for good documentation.
-
More providers and provisioners are always welcome.
-
Write in Ruby / Vagrant what is necessary, but keep any front-loaded logic in Python.