OpenStack provider API, first step


To bootstrap Enough it needs an OpenStack provider from which it will get or create a a config file file and store it in ~/.enough/ file.

If Enough had a driver for an OpenStack provider (OVH for instance), it would use their API to create a new project and choose an unused region.

But there is no such driver and the goal is to use an existing Enough instance as an OpenStack provider. Assuming Enough is deployed on an OVH OpenStack project, it has six regions (BHS3 DE1 GRA5 SBG5 UK1 WAW1), five of which are not used.

As a first implementation, Enough could act as an OpenStack provider by allocating one of the unused regions. This provides limited capacity but is also rather simple to implement.

Does that sound reasonable?


Re-using the same OpenStack project means the API server has access to the production OpenStack credentials which makes me a little uncomfortable. I would rather use an entirely different project so there is absolutely no way for the API server to delete any production host or volume, by accident or because it is compromised.