vipr_api.web.routers.plugins package¶
Submodules¶
vipr_api.web.routers.plugins.config_manager module¶
Configuration management for plugins.
- async vipr_api.web.routers.plugins.config_manager.batch_update_plugin_configs(operations) PluginBatchToggleResponse¶
Update multiple plugin configurations in a single operation.
- vipr_api.web.routers.plugins.config_manager.ensure_plugin_in_config(plugin_name: str, enabled: bool = True) bool¶
Ensure plugin is in runtime config.
- vipr_api.web.routers.plugins.config_manager.get_runtime_config_path() Path¶
Get runtime config path from environment or default.
vipr_api.web.routers.plugins.constants module¶
Constants and configuration for plugin management.
vipr_api.web.routers.plugins.exceptions module¶
Custom exceptions for plugin management.
- exception vipr_api.web.routers.plugins.exceptions.PluginAlreadyExistsError¶
Bases:
PluginErrorPlugin already exists.
- exception vipr_api.web.routers.plugins.exceptions.PluginConfigError¶
Bases:
PluginErrorPlugin configuration error.
- exception vipr_api.web.routers.plugins.exceptions.PluginError¶
Bases:
ExceptionBase exception for plugin operations.
- exception vipr_api.web.routers.plugins.exceptions.PluginNotFoundError¶
Bases:
PluginErrorPlugin not found.
- exception vipr_api.web.routers.plugins.exceptions.PluginValidationError¶
Bases:
PluginErrorPlugin validation failed.
vipr_api.web.routers.plugins.plugin_service module¶
Plugin discovery and lifecycle management.
- async vipr_api.web.routers.plugins.plugin_service.batch_delete_runtime_plugins(plugin_names) PluginBatchDeleteResponse¶
Delete multiple runtime plugins in a single operation.
- async vipr_api.web.routers.plugins.plugin_service.delete_runtime_plugin(plugin_name: str) PluginDeleteResponse¶
Delete a runtime plugin (builtin plugins cannot be deleted).
- async vipr_api.web.routers.plugins.plugin_service.get_plugin_list_from_cement() PluginListResponse¶
Get plugin list from Cement controller.
vipr_api.web.routers.plugins.upload_handlers module¶
Plugin upload handlers.
- async vipr_api.web.routers.plugins.upload_handlers.handle_plugin_upload(file: UploadFile, overwrite: bool) PluginUploadResponse¶
Main upload handler that routes to appropriate handler.
- Parameters:
file – Uploaded file
overwrite – Whether to overwrite existing plugin
- Returns:
PluginUploadResponse with upload result
vipr_api.web.routers.plugins.validators module¶
Plugin validation utilities.
- vipr_api.web.routers.plugins.validators.validate_plugin_code(plugin_code: str, plugin_name: str) ValidationResult¶
Validate Python plugin code for syntax and security.
- Parameters:
plugin_code – Python source code
plugin_name – Name of the plugin
- Returns:
ValidationResult with validation details
Module contents¶
Plugin Management Router for FastAPI.
This router provides endpoints for managing runtime plugins.
- async vipr_api.web.routers.plugins.batch_delete_plugins(plugin_names: List[str] = Body(PydanticUndefined))¶
Delete multiple runtime plugins in a single operation.
- async vipr_api.web.routers.plugins.batch_toggle_plugins(operations: List[PluginBatchOperation] = Body(PydanticUndefined))¶
Enable or disable multiple runtime plugins in a single operation.
- async vipr_api.web.routers.plugins.delete_plugin(plugin_name: str)¶
Delete a runtime plugin (builtin plugins cannot be deleted).
- async vipr_api.web.routers.plugins.list_plugins()¶
List all builtin and runtime plugins with their status.
- async vipr_api.web.routers.plugins.toggle_plugin(plugin_name: str, request: PluginToggleRequest)¶
Enable or disable a runtime plugin.