面向python的mender sdk
mender的Python项目详细描述
修补工
用法
asyncwithMender(base_url='https://docker.mender.io/api/management/v1')asmender:# List devices on page 1devices=awaitmender.get_devices_paged(page=1)print(devices)# List all devicesasyncfordeviceinmender.get_devices():print(device)# Filter all devices by attributesasyncfordeviceinmender.get_devices(attributes={"hostname":'xxx-ffffffffffff'}):print(device)
或自行关闭会话:
mender=Mender(base_url='https://docker.mender.io/api/management/v1')# ...# Remember to close during finishingawaitmender.session.close()
安装
使用pip:
pip install mender
使用pipenv:
pipenv install mender
展开
pipenv run python3 setup.py sdist bdist_wheel pipenv run twine upload dist/*
设备库存
/inventory
API端点
所有uri都与https://docker.mender.io/api/management/v1/inventory
Class | Method | HTTP request | Description |
---|---|---|---|
Mender | devices_get | GET /devices | List devices |
Mender | devices_id_delete | DELETE /devices/{id} | Remove selected device |
Mender | devices_id_get | GET /devices/{id} | Get a selected device |
Mender | devices_id_group_get | GET /devices/{id}/group | Get a selected device's group |
Mender | devices_id_group_name_delete | DELETE /devices/{id}/group/{name} | Remove a device from a group |
Mender | devices_id_group_put | PUT /devices/{id}/group | Add a device to a group |
Mender | groups_get | GET /groups | List groups |
Mender | groups_name_devices_get | GET /groups/{name}/devices | List the devices belonging to a given group |
用户管理和身份验证
/useradm
API端点
所有uri都与https://docker.mender.io/api/management/v1/useradm
Class | Method | HTTP request | Description |
---|---|---|---|
Mender | auth_login_post | POST /auth/login | Log in to Mender |
Mender | settings_get | GET /settings | Get user settings |
Mender | settings_post | POST /settings | Set user settings |
Mender | users_get | GET /users | List users |
Mender | users_id_delete | DELETE /users/{id} | Remove user from the system |
Mender | users_id_get | GET /users/{id} | Get user information |
Mender | users_id_put | PUT /users/{id} | Update user information |
Mender | users_post | POST /users | Create user |
参考文献
- https://github.com/yongjhih/mender.js
- https://github.com/yongjhih/openapi-generator/tree/mender/modules/openapi-generator/src/main/resources/python-typing-client
堆栈
- PEP 525-异步发电机(需要3.6)
- PEP 557-数据类(需要3.7,但有一个用于3.6的后端库)
- pep 498-格式化的字符串文本(需要3.6,但它是<;3.6的后台端口库)