ApacheCloudStackAPI的简约包装。
csapi的Python项目详细描述
apache cloudstack api包装器
==
这个项目是apache cloudstack(acs)api的一个极简包装器。它的
目的是提供一个独立于acs版本的acs库。
而不是为所有acs功能提供函数存根,此库与acs api文档一起使用,`request`函数接受每个调用所需的json值。
“api”类可以从任何代码实例化。它有一个'request`
方法,用于对acs进行api调用。此方法获取请求参数的python
字典,并返回带有结果的python字典。
2。“cli”类是“api”的一个子类,旨在成为一个方便的
类,用于使用由“docopt”解析的命令行参数填充“api”构造函数的独立脚本
。命令行参数可以
直接传入,也可以添加到json文件中,并且“--json”标志可以
用于引用json文件路径。包中包含了一个“cli-example.py”文件,提供了一个如何使用这个用例的工作示例。
这个库的核心是一个单独的“request”方法,描述如下。
``python
api.request(self,params)
````
```sphinx
生成请求并返回结果的python字典或无结果。
:param params:要添加到url的查询参数
:type params:dict
:返回:请求结果作为python字典
:rtype:dict或none
```
**使用父字典的示例` api`class:**
``python
来自csapi import api
api=api(api_key=“your_api_key”,
secret_key=“your_secred_key”,
endpoint=“http://127.0.0.1:8080/client/api”)
accounts=api.request({
“command”:“listaccounts”
})
`````
**使用“cli”子类的示例:**
``python
来自csapi import cli“command”:“listaccounts”
}
```
install
=
>安装此库的最简单方法是通过“pip”。
``bash
$pip install csapi
````
您可以直接拉下源代码并手动安装。
``bash
$git clone https://github.com/swill/csapi.git
$cd csapi
$python setup.py install
````
usage
=
上面有文档说明了核心功能,但值得花一分钟来更好地描述“cli”用例。
`` bash
$./cli-example.py--help
用法:
cli-example.py[--json=<;arg>;][--api-key=<;arg>;--secret-key=<;arg>;][options]
cli example.py(-h--help)
options:
-h--帮助显示此屏幕。
--json=<;arg gt;json配置文件的路径,其名称与选项相同(前面没有--)。
--api_key=<;arg>;cs api key.
--secret_key=<;arg>;cs secret key.
--endpoint=<;arg>;cs endpoint
[默认值:http://127.0.0.1:8080/client/api]。
--poll-interval=<;arg>;interval,以秒为单位,用于检查异步作业上的结果
[默认值:5]。
--logging=<;arg>;boolean用于打开或关闭日志记录[默认值:true]。
--log=<;arg>;要使用的日志文件[默认值:logs/cs_api.log]。
--clear_log=<;arg>;在每次创建api对象时删除日志
[默认值:true]。
--async=<;arg>;boolean指定api是否应等待异步调用
[默认值:false]。
```
==
这个项目是apache cloudstack(acs)api的一个极简包装器。它的
目的是提供一个独立于acs版本的acs库。
而不是为所有acs功能提供函数存根,此库与acs api文档一起使用,`request`函数接受每个调用所需的json值。
“api”类可以从任何代码实例化。它有一个'request`
方法,用于对acs进行api调用。此方法获取请求参数的python
字典,并返回带有结果的python字典。
2。“cli”类是“api”的一个子类,旨在成为一个方便的
类,用于使用由“docopt”解析的命令行参数填充“api”构造函数的独立脚本
。命令行参数可以
直接传入,也可以添加到json文件中,并且“--json”标志可以
用于引用json文件路径。包中包含了一个“cli-example.py”文件,提供了一个如何使用这个用例的工作示例。
这个库的核心是一个单独的“request”方法,描述如下。
``python
api.request(self,params)
````
```sphinx
生成请求并返回结果的python字典或无结果。
:param params:要添加到url的查询参数
:type params:dict
:返回:请求结果作为python字典
:rtype:dict或none
```
**使用父字典的示例` api`class:**
``python
来自csapi import api
api=api(api_key=“your_api_key”,
secret_key=“your_secred_key”,
endpoint=“http://127.0.0.1:8080/client/api”)
accounts=api.request({
“command”:“listaccounts”
})
`````
**使用“cli”子类的示例:**
``python
来自csapi import cli“command”:“listaccounts”
}
```
install
=
>安装此库的最简单方法是通过“pip”。
``bash
$pip install csapi
````
您可以直接拉下源代码并手动安装。
``bash
$git clone https://github.com/swill/csapi.git
$cd csapi
$python setup.py install
````
usage
=
上面有文档说明了核心功能,但值得花一分钟来更好地描述“cli”用例。
`` bash
$./cli-example.py--help
用法:
cli-example.py[--json=<;arg>;][--api-key=<;arg>;--secret-key=<;arg>;][options]
cli example.py(-h--help)
options:
-h--帮助显示此屏幕。
--json=<;arg gt;json配置文件的路径,其名称与选项相同(前面没有--)。
--api_key=<;arg>;cs api key.
--secret_key=<;arg>;cs secret key.
--endpoint=<;arg>;cs endpoint
[默认值:http://127.0.0.1:8080/client/api]。
--poll-interval=<;arg>;interval,以秒为单位,用于检查异步作业上的结果
[默认值:5]。
--logging=<;arg>;boolean用于打开或关闭日志记录[默认值:true]。
--log=<;arg>;要使用的日志文件[默认值:logs/cs_api.log]。
--clear_log=<;arg>;在每次创建api对象时删除日志
[默认值:true]。
--async=<;arg>;boolean指定api是否应等待异步调用
[默认值:false]。
```