cloudbridge支持的用于与云提供商交互的restful web api
djcloudbridge的Python项目详细描述
一个可重用的django应用程序,它公开了一个restful web api,用于与 CloudBridge提供者。api的结构反映了组织 允许创建、检索和更新 CloudBridge资源。
文档
快速启动
安装djcloudbridge:
pip install djcloudbridge
将其添加到已安装的应用程序中
INSTALLED_APPS=(...'djcloudbridge.apps.DjangoCloudbridgeConfig',...)
添加djcloudbridge的url模式:
fromdjcloudbridgeimporturlsasdjcloudbridge_urlsurlpatterns=[...url(r'^',include(djcloudbridge_urls)),...]
最后,在settings.py中建议使用以下设置
REST_FRAMEWORK={'PAGE_SIZE':50,'DEFAULT_PAGINATION_CLASS':'rest_framework.pagination.PageNumberPagination','DEFAULT_AUTHENTICATION_CLASSES':('rest_framework.authentication.SessionAuthentication','rest_framework.authentication.TokenAuthentication')}REST_AUTH_SERIALIZERS={'USER_DETAILS_SERIALIZER':'djcloudbridge.serializers.UserSerializer'}REST_SESSION_LOGIN=True# **Make sure to change** the value for ``FERNET_KEYS`` variable# because it is used to encrypt sensitive database fields.FERNET_KEYS=['new key for encrypting']
在本地运行api
可以运行测试服务器在本地浏览api端点。德克劳德布里奇 是基于Python3.6的,尽管它可以在旧的Python上工作 版本,3.6是唯一受支持的版本。使用virtualenv也是 非常明智。
要开始,只需在 django管理中的相关云模型(例如aws、azure、gce、openstack)。 然后在用户配置文件模型下创建用户配置文件。最后,使用api 浏览器位于http://localhost:8000/clouds以查看您注册的云和 与该提供商的云资源交互。
- 签出djcloudbridge并创建环境
$ mkdir djcloudbridge &&cd djcloudbridge $ virtualenv -p python3.6 venv --prompt "(djcloudbridge)"&&source venv/bin/activate $ git clone https://github.com/cloudve/djcloudbridge.git $ cd djcloudbridge $ pip install -r requirements.txt $ python manage.py migrate $ python manage.py createsuperuser $ python manage.py runserver
- 访问http://127.0.0.1:8000/admin/定义云连接设置。
- 访问http://127.0.0.1:8000/clouds/以了解api。
功能
- 待办事项
运行测试
代码真的有用吗?
source <YOURVIRTUALENV>/bin/activate (myenv) $ pip install tox (myenv) $ tox
历史记录
0.1.0(2017-10-04)
- pypi上的第一个版本。
0.2.0(2017-11-15)
- 更新了aws云模型以反映cloudbridge的变化。
- 小错误修复
0.3.0(2017-12-17)
- 已将azure资源组、存储帐户和vm_default_用户名移动到凭据
- 已将状态更改为beta版