- Homepage
- Credits
Copyright 2012 Slade Cozart <slade.cozart@gmail.com>
- Add'l Credits
Chmouel Boudjnah <chmouel@chmouel.com> for his work on python-cloudlb
- Licence
BSD
- API Reference
http://docs.rackspace.com/cdb/api/v1.0/cdb-devguide/content/overview.html
List all instances and databases:
#!/usr/bin/env python
import clouddb
cdb = clouddb.CloudDB('username', 'apikey', 'region')
for instance in cdb.get_instances():
print '%s - %s Flavor %s Size %s' % (instance.id, instance.name,
instance.flavor['id'],
instance.volume['size'])
for database in instance.get_databases():
print ' ', database.name
Get an instance by id:
#!/usr/bin/env python
import clouddb
cdb = clouddb.CloudDB('username', 'apikey', 'region')
instance = cdb.get_instance('da3d55cc-7998-4ef6-9375-d8d7ee0d469a')
print instance.name
Delete an instance by id:
#!/usr/bin/env python
import clouddb
cdb = clouddb.CloudDB('username', 'apikey', 'region')
cdb.delete_instance('da3d55cc-7998-4ef6-9375-d8d7ee0d469a')
Create instance with no databases:
#!/usr/bin/env python
import clouddb
cdb = clouddb.CloudDB('username', 'apikey', 'region')
instance = cdb.create_instance('myinstance', 1, 1)
Create instance with two databases:
#!/usr/bin/env python
import clouddb
cdb = clouddb.CloudDB('username', 'apikey', 'region')
databases=[{'name': 'db1'},
{'name': 'db2', 'character_set': 'latin5', 'collate': 'latin5_turkish_ci'}]
instance = cdb.create_instance('myinstance', 1, 1, databases=databases)
Create instance with two databases and two users:
#!/usr/bin/env python
import clouddb
cdb = clouddb.CloudDB('username', 'apikey', 'region')
databases=[{'name': 'db1'},
{'name': 'db2', 'character_set': 'latin5', 'collate': 'latin5_turkish_ci'}]
users=[{"databases": [{"name": "db1"}],
"name": "db1user",
"password": "db1password"},
{"databases": [{"name": "db2"}],
"name": "db2user",
"password": "db2password"}
]
instance = cdb.create_instance('myinstance', 1, 1, databases=databases, users=users)
Create database in existing instance:
#!/usr/bin/env python
import clouddb
cdb = clouddb.CloudDB('username', 'apikey', 'region')
database=[{'name':'new_database'}]
instance = cdb.get_instance('da3d55cc-7998-4ef6-9375-d8d7ee0d469a')
instance.create_databases(databases)
Create user for database:
#!/usr/bin/env python
import clouddb
cdb = clouddb.CloudDB('username', 'apikey', 'region')
instance = cdb.get_instance('instanceid')
instance.create_user('username', 'password', ['db1', 'db2'])