Cloud Foundry OpenStack Swift Service
This service allows to integration an OpenStack Swift as a Cloud Foundry service.
- A running OpenStack installation including Swift.
- The service has been tested against a OpenStack Grizzly installation.
How it works
- Create tenant: When a Swift service instance is provisioned, a OpenStack tenant (project) is created.
- Create user: for the new tenant also a user is generated.
- Create directory: a directory is created.
By creating an OpenStack tenant (project) a Cloud Foundry user can only see buckets of his OpenStack tenant.
OpenStack tenants are meant to isolate resources from each other.
An account meta key is set for the newly created tenant. With this tenant wide account meta key, being part of the bind credentials, users can
create temporary urls to make private files selectively public for a limited time period.
Binding to a Swift service instance means to create a user for the given Swift Tenant (representing a Cloud Foundry Swift service instance).
This means it is possible to have multiple Cloud Foundry apps to bind to the same OpenStack tenant and hence access the same
The current implementation supports only the “free” plan and enforce a quota of 10GB.
However, this is to be addressed in future versions.
Usage of the swift service within applications
Direct fog access
This blog post gives an introduction on how to use the cf swift service within your applications deployed on Cloud Foundry.
A “blog post” about using the swift service within your applications using the paperclip gem: http://blog.anynines.com/how-to-use-the-anynines-swift-service-with-paperclip/