mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-07-12 11:46:31 +00:00
Move list of all available addons to own api call (#24)
* Move list of all available addons to own api call * fix lint * fix lint * fix style
This commit is contained in:
parent
2e168d089c
commit
c76408e4e8
21
API.md
21
API.md
@ -26,6 +26,8 @@ On success
|
|||||||
|
|
||||||
- GET `/supervisor/info`
|
- GET `/supervisor/info`
|
||||||
|
|
||||||
|
The addons from `addons` are only installed one.
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"version": "INSTALL_VERSION",
|
"version": "INSTALL_VERSION",
|
||||||
@ -36,7 +38,7 @@ On success
|
|||||||
"name": "xy bla",
|
"name": "xy bla",
|
||||||
"slug": "xy",
|
"slug": "xy",
|
||||||
"version": "LAST_VERSION",
|
"version": "LAST_VERSION",
|
||||||
"installed": "none|INSTALL_VERSION",
|
"installed": "INSTALL_VERSION",
|
||||||
"dedicated": "bool",
|
"dedicated": "bool",
|
||||||
"description": "description"
|
"description": "description"
|
||||||
}
|
}
|
||||||
@ -47,6 +49,23 @@ On success
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
- GET `/supervisor/addons`
|
||||||
|
|
||||||
|
Get all available addons
|
||||||
|
|
||||||
|
```json
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"name": "xy bla",
|
||||||
|
"slug": "xy",
|
||||||
|
"version": "LAST_VERSION",
|
||||||
|
"installed": "none|INSTALL_VERSION",
|
||||||
|
"dedicated": "bool",
|
||||||
|
"description": "description"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
- POST `/supervisor/update`
|
- POST `/supervisor/update`
|
||||||
Optional:
|
Optional:
|
||||||
```json
|
```json
|
||||||
|
@ -48,6 +48,8 @@ class RestAPI(object):
|
|||||||
|
|
||||||
self.webapp.router.add_get('/supervisor/ping', api_supervisor.ping)
|
self.webapp.router.add_get('/supervisor/ping', api_supervisor.ping)
|
||||||
self.webapp.router.add_get('/supervisor/info', api_supervisor.info)
|
self.webapp.router.add_get('/supervisor/info', api_supervisor.info)
|
||||||
|
self.webapp.router.add_get(
|
||||||
|
'/supervisor/addons', api_supervisor.available_addons)
|
||||||
self.webapp.router.add_post(
|
self.webapp.router.add_post(
|
||||||
'/supervisor/update', api_supervisor.update)
|
'/supervisor/update', api_supervisor.update)
|
||||||
self.webapp.router.add_post(
|
self.webapp.router.add_post(
|
||||||
|
@ -46,9 +46,14 @@ class APISupervisor(object):
|
|||||||
ATTR_LAST_VERSION: self.config.last_hassio,
|
ATTR_LAST_VERSION: self.config.last_hassio,
|
||||||
ATTR_BETA_CHANNEL: self.config.upstream_beta,
|
ATTR_BETA_CHANNEL: self.config.upstream_beta,
|
||||||
ATTR_ADDONS: self.addons.list_api,
|
ATTR_ADDONS: self.addons.list_api,
|
||||||
ATTR_ADDONS_REPOSITORIES: list(self.config.addons_repositories),
|
ATTR_ADDONS_REPOSITORIES: self.config.addons_repositories,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@api_process
|
||||||
|
async def available_addons(self, request):
|
||||||
|
"""Return information for all available addons."""
|
||||||
|
return self.addons.list_api
|
||||||
|
|
||||||
@api_process
|
@api_process
|
||||||
async def options(self, request):
|
async def options(self, request):
|
||||||
"""Set supervisor options."""
|
"""Set supervisor options."""
|
||||||
|
@ -30,7 +30,7 @@ def api_process(method):
|
|||||||
except RuntimeError as err:
|
except RuntimeError as err:
|
||||||
return api_return_error(message=str(err))
|
return api_return_error(message=str(err))
|
||||||
|
|
||||||
if isinstance(answer, dict):
|
if isinstance(answer, (dict, list)):
|
||||||
return api_return_ok(data=answer)
|
return api_return_ok(data=answer)
|
||||||
elif answer:
|
elif answer:
|
||||||
return api_return_ok()
|
return api_return_ok()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user