from ..exceptions import DashboardException
from ..security import Scope
from ..services.exception import handle_orchestrator_error
-from ..services.orchestrator import OrchClient
+from ..services.orchestrator import OrchClient, OrchFeature
from ..tools import TaskManager
+ STATUS_SCHEMA = {
+ "available": (bool, "Orchestrator status"),
+ "description": (str, "Description")
+ }
+
def get_device_osd_map():
"""Get mappings from inventory devices to OSD IDs.
@ApiController('/orchestrator/inventory', Scope.HOSTS)
+ @ControllerDoc("Get Orchestrator Inventory Details", "OrchestratorInventory")
class OrchestratorInventory(RESTController):
- @raise_if_no_orchestrator
+ @raise_if_no_orchestrator([OrchFeature.DEVICE_LIST])
def list(self, hostname=None):
orch = OrchClient.instance()
hosts = [hostname] if hostname else None