A unified interface into multiple cloud providers.
Project description
rtwo 0.5.16
A unified interface into multiple cloud providers.
To install use pip install git+git://git@github.com:iPlantCollaborativeOpenSource/rtwo.git
----
rtwo
====
[![Build Status](https://travis-ci.org/cyverse/rtwo.svg?branch=master)](https://travis-ci.org/cyverse/rtwo)
A unified interface into multiple cloud providers.
Built on top of Apache libcloud with support for modern OpenStack. Also supports legacy Eucalyptus 2.x and AWS.
# Install #
```bash
pip install rtwo
```
## Or from source ##
```bash
pip install -e git://github.com/cyverse/rtwo#egg=rtwo
```
# Use #
```python
In [1]: import rtwo
In [2]: from rtwo.provider import OSProvider
In [3]: from rtwo.identity import OSIdentity
In [4]: from rtwo.driver import OSDriver
In [5]: from rtwo.accounts.openstack import AccountDriver
In [6]: osp = OSProvider()
In [7]: ad = AccountDriver()
In [8]: ad.create_account("awesomeo")
Out[8]:
(<User {u'email': u'awesomeo@iplantcollaborative.org', u'tenantId': u'97dfaaebb0d943baa0cfa7cbd3bf24d5', u'enabled': True, u'name': u'awesomeo', u'id': u'
3d3ca254e7054fdcaa54f473e4d5b59f'}>,
'yourpassword',
<Tenant {u'enabled': True, u'description': None, u'name': u'awesomeo', u'id': u'97dfaaebb0d943baa0cfa7cbd3bf24d5'}>)
In [9]: osi = OSIdentity(osp, key=OPENSTACK_ADMIN_KEY, secret=OPENSTACK_ADMIN_SECRET, user="awesomeo", auth_url="http://openstack-server.org:port/v2.0", password=ad.hashpass("awesomeo"), region_name="ValhallaRegion", ex_tenant_name="awesomeo", username="awesomeo")
In [19]: osdriver = OSDriver(osp, osi)
In [11]: sizes = osdriver.list_sizes()
In [12]: machines = osdriver.list_machines()
In [13]: osdriver.create_instance(name="Lame.", image=machines[-1], size=sizes[1])
Out[13]: <class 'rtwo.instance.OSInstance'> {'name': 'Lame.', 'ip': None, 'machine': {'alias': '7819f88b-b335-449d-b17f-ed3af350c918', 'provider': 'OpenStack', 'id': '7819f88b-b335-449d-b17f-ed3af350c918', 'name': 'Ubuntu 12.04 NoGui 4GB 64-bit bare'}, 'alias': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'provider': 'OpenStack', 'id': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'size': {'alias': '2', 'bandwidth': None, 'disk': 10, 'name': 'm1.small', 'price': 0.0, 'ram': 2048, 'id': 'm1.small', 'cpu': 1}}
In [14]: osdriver.list_instances()
Out[14]: [<class 'rtwo.instance.OSInstance'> {'name': 'Lame.', 'ip': None, 'machine': {'alias': '7819f88b-b335-449d-b17f-ed3af350c918', 'provider': 'OpenStack', 'id': '7819f88b-b335-449d-b17f-ed3af350c918', 'name': 'Ubuntu 12.04 NoGui 4GB 64-bit bare'}, 'alias': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'provider': 'OpenStack', 'id': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'size': {'alias': '2', 'bandwidth': None, 'disk': 10, 'name': 'm1.small', 'price': 0.0, 'ram': 2048, 'id': 'm1.small', 'cpu': 1}}]
```
# License
See LICENSE file.
----
For more information, please see: https://github.com/iPlantCollaborativeOpenSource/rtwo
A unified interface into multiple cloud providers.
To install use pip install git+git://git@github.com:iPlantCollaborativeOpenSource/rtwo.git
----
rtwo
====
[![Build Status](https://travis-ci.org/cyverse/rtwo.svg?branch=master)](https://travis-ci.org/cyverse/rtwo)
A unified interface into multiple cloud providers.
Built on top of Apache libcloud with support for modern OpenStack. Also supports legacy Eucalyptus 2.x and AWS.
# Install #
```bash
pip install rtwo
```
## Or from source ##
```bash
pip install -e git://github.com/cyverse/rtwo#egg=rtwo
```
# Use #
```python
In [1]: import rtwo
In [2]: from rtwo.provider import OSProvider
In [3]: from rtwo.identity import OSIdentity
In [4]: from rtwo.driver import OSDriver
In [5]: from rtwo.accounts.openstack import AccountDriver
In [6]: osp = OSProvider()
In [7]: ad = AccountDriver()
In [8]: ad.create_account("awesomeo")
Out[8]:
(<User {u'email': u'awesomeo@iplantcollaborative.org', u'tenantId': u'97dfaaebb0d943baa0cfa7cbd3bf24d5', u'enabled': True, u'name': u'awesomeo', u'id': u'
3d3ca254e7054fdcaa54f473e4d5b59f'}>,
'yourpassword',
<Tenant {u'enabled': True, u'description': None, u'name': u'awesomeo', u'id': u'97dfaaebb0d943baa0cfa7cbd3bf24d5'}>)
In [9]: osi = OSIdentity(osp, key=OPENSTACK_ADMIN_KEY, secret=OPENSTACK_ADMIN_SECRET, user="awesomeo", auth_url="http://openstack-server.org:port/v2.0", password=ad.hashpass("awesomeo"), region_name="ValhallaRegion", ex_tenant_name="awesomeo", username="awesomeo")
In [19]: osdriver = OSDriver(osp, osi)
In [11]: sizes = osdriver.list_sizes()
In [12]: machines = osdriver.list_machines()
In [13]: osdriver.create_instance(name="Lame.", image=machines[-1], size=sizes[1])
Out[13]: <class 'rtwo.instance.OSInstance'> {'name': 'Lame.', 'ip': None, 'machine': {'alias': '7819f88b-b335-449d-b17f-ed3af350c918', 'provider': 'OpenStack', 'id': '7819f88b-b335-449d-b17f-ed3af350c918', 'name': 'Ubuntu 12.04 NoGui 4GB 64-bit bare'}, 'alias': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'provider': 'OpenStack', 'id': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'size': {'alias': '2', 'bandwidth': None, 'disk': 10, 'name': 'm1.small', 'price': 0.0, 'ram': 2048, 'id': 'm1.small', 'cpu': 1}}
In [14]: osdriver.list_instances()
Out[14]: [<class 'rtwo.instance.OSInstance'> {'name': 'Lame.', 'ip': None, 'machine': {'alias': '7819f88b-b335-449d-b17f-ed3af350c918', 'provider': 'OpenStack', 'id': '7819f88b-b335-449d-b17f-ed3af350c918', 'name': 'Ubuntu 12.04 NoGui 4GB 64-bit bare'}, 'alias': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'provider': 'OpenStack', 'id': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'size': {'alias': '2', 'bandwidth': None, 'disk': 10, 'name': 'm1.small', 'price': 0.0, 'ram': 2048, 'id': 'm1.small', 'cpu': 1}}]
```
# License
See LICENSE file.
----
For more information, please see: https://github.com/iPlantCollaborativeOpenSource/rtwo
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
rtwo-0.5.16.tar.gz
(62.6 kB
view details)
Built Distribution
rtwo-0.5.16-py2-none-any.whl
(71.5 kB
view details)
File details
Details for the file rtwo-0.5.16.tar.gz
.
File metadata
- Download URL: rtwo-0.5.16.tar.gz
- Upload date:
- Size: 62.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a3b63a7023b164edc7cdf6f98f0697c42cfa74c8ad83b4c3ace431dd0573fe4 |
|
MD5 | cfff5412418c9b1f2a75941b88fc727e |
|
BLAKE2b-256 | 129fea0f71257b59caf9d15f819566f3492e3bbb0b293c600dc9885a60682817 |
File details
Details for the file rtwo-0.5.16-py2-none-any.whl
.
File metadata
- Download URL: rtwo-0.5.16-py2-none-any.whl
- Upload date:
- Size: 71.5 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 98aa05cf2da0127acd987e2749715b0f7de7fd16a1846c83f74ed64839ffd67e |
|
MD5 | d1cf072151ae3022dfdc613574a9b0f3 |
|
BLAKE2b-256 | e4e2ac9a57a47121fb21c1007d3b72012d585dfdcbfebcb8ad46ce57f5850780 |