Been using libcloud for a while—even developed wrappers to automate
provisioning and deployments—but recently came across the use-case of
utilising a local virtual-machine for development; whilst still keeping the
same logic to update my local as my test & [sometimes] production
deployment pipelines.

So for example the Fabric script running `update_assets` after updating
templates in a Django project, can now be shared across my
local-development and test servers. Add in some watchdog code [for local]
and git hooks [for test-server(s)] and suddenly everything updates
continuously.

Here's a proof-of-concept: https://github.com/offscale/libcloud/tree/vagrant

It wraps the python-vagrant library. Not sure how you want that dependency
handled (or if you want me to maintain a fork in the libcloud library).

If you like the idea of a libcloud.drivers.compute.vagrant I'll turn this
into a proper PR, with test-coverage and all.

Interested? :)

Samuel Marks
http://linkedin.com/in/samuelmarks

BTW: Technically vagrant supports AWS, VirtualBox, Hyper-V, docker and host
more [via community plugins]
https://github.com/mitchellh/vagrant/wiki/Available-Vagrant-Plugins#providers
- which would make this a weird PR to libcloud.

However one of my [stretch] goals with the offscale packages is to make a
base libcloud CLI, FFI layer, and configuration format to replace everyone
elses custom jobs (Cloudfoundry's BOSH, Apache jclouds, Hashicorp's
Vagrant/Packer [& their other products], &etc.). So a bit of bidirectional
support for systems which do similar things wouldn't go amiss ;)

Reply via email to