使用asyncio的基本openstack异步客户端库

AsyncOpenStackClient的Python项目详细描述


AsyncOpenStackClient

image0image1

简介

异步openstackclient是openstack api的异步rest包装器。它为身份验证提供了一个很好的抽象。有关方法规范,请参见官方的openstack文档:https://docs.openstack.org/queens/api/

安装

使用pip:

pip install AsyncOpenStackClient

用法

fromasyncopenstackclientimportNovaClient,GlanceClient,CinderClient,AuthPassword# you can either pass credentials explicitly (as shown below)# or use enviormental variables from OpenStack RC file# https://docs.openstack.org/mitaka/cli-reference/common/cli_set_environment_variables_using_openstack_rc.htmlauth=AuthPassword(auth_url='https://keystone:5999/v3'username='USER',password='PASS',project_name='my-project',user_domain_name='default',project_domain_name='foo.bar')nova=NovaClient(session=auth)glance=GlanceClient(session=auth)cinder=CinderClient(session=auth)# api url for each service will be taken from catalog,# but you may pass `api_url` param to force custom url eg.# nova = NovaClient(session=auth, api_url='http://my-local-nova:9876/v2/')awaitnova.init_api()awaitglance.init_api()awaitcinder.init_api()servers=awaitnova.servers.list(name='testvm')vm=awaitnova.servers.get(server_id)action_spec={'os-stop':None}awaitnova.servers.run_action(server_id,**action_spec)specs={"name":'some_name',"flavorRef":'flavor_id',"imageRef":'image_id',"security_groups":[{'name':'group1'},{'name':'group2'}]"user_data":base64.b64encode(userdata).decode('utf-8')}response=awaitnova.servers.create(server=specs)print(response)volume={"size":200,"imageRef":"image_id","name":"some_name"}response=awaitcinder.volumes.create(volume=volume)print(response)

可用功能

更改日志

0.8.1(2019-04-03)

  • 修复:升级依赖项(urllib3:cve-2018-20060)

0.8.0(2018-08-19)

  • 功能:compute api的另一部分-在服务器上运行操作
  • 功能:CD配置

0.7.0(2018-06-15)

  • 特点:炉渣实现
  • 错误修复:错误修复

0.6.3(2018-06-13)

  • 功能:可调请求超时,默认值为60秒

0.6.2(2018-05-18)

  • 错误修复:初始化客户端中的属性(API)以获得一些有意义的错误,而不是“达到递归限制”。

0.6.0(2018-05-12)

  • 功能:使用资源/方法代理包装请求

0.5.2(2018-05-10)

  • 错误修复:在api根url末尾添加斜杠

0.5.1(2018-04-29)

  • 错误修复:用元数据条目和envs通知更新自述文件

0.5.0(2018-04-25)

  • 功能:部分支持服务器元数据的使用

0.4.1(2018-04-25)

  • bugifx:具有urljoin的concat auth_url无效

0.4.0(2018-04-16)

  • 功能:使用变量(如果存在)

0.3.0(2018-04-13)

  • 功能:接受并传递API URL
  • 功能:如果目录提供不完整的API URL(例如没有版本)

0.2.3(2018-04-05)

  • 错误修复:不要等待同步方法

0.2.2(2018-04-02)

  • 更新简单rest客户端(固定日志记录)

0.2.1(2018-03-28)

  • 修复测试、COV报告、manifest.in

0.1.1(2018-03-02)

  • 更新manifest.in

0.1.0(2018-02-15)

  • 为python3构建异步openstack客户端库的第一种方法

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
websocket是否有一个Java版本的Signal?   java我的代码中出现了一个空指针异常,因为hashmap没有填充,或者可能没有填充   getter上的java NullPointerException   用于多个类的java Android onClick   java如何将Spring MVC与AngularJS uirouter结合使用?   如何将Java对象转换为JSON   java错误:任务执行失败,重复条目   在java中删除形状的绘图   使用java进行纯文本解析   (Java/Regex)如何找到“http://”除了“src=”http://”   使用未绑定LDAP SDK api的Java问题(使用参数调用方法)   java为什么不提供一个操作符在斯卡拉   Java匹配不同的数组   验证sql spark java的列   具有继承调用的构造函数中的java最终变量