Register a version record (only version info, no config) Args: component_type: Type of component (tool, environment, agent) name: Component name version: Version string description: Version description metadata: Version met
(self, component_type: str, name: str, version: str,
description: Optional[str] = None, metadata: Optional[Dict[str, Any]] = None)
| 60 | |
| 61 | |
| 62 | async def register_version(self, component_type: str, name: str, version: str, |
| 63 | description: Optional[str] = None, metadata: Optional[Dict[str, Any]] = None) -> ComponentVersionHistory: |
| 64 | """Register a version record (only version info, no config) |
| 65 | |
| 66 | Args: |
| 67 | component_type: Type of component (tool, environment, agent) |
| 68 | name: Component name |
| 69 | version: Version string |
| 70 | description: Version description |
| 71 | metadata: Version metadata |
| 72 | |
| 73 | Returns: |
| 74 | ComponentVersionHistory: Version history for the component |
| 75 | """ |
| 76 | if component_type not in self._version_histories: |
| 77 | raise ValueError(f"Unknown component type: {component_type}") |
| 78 | |
| 79 | if name not in self._version_histories[component_type]: |
| 80 | version_history = ComponentVersionHistory( |
| 81 | name=name, |
| 82 | component_type=component_type, |
| 83 | current_version=version |
| 84 | ) |
| 85 | self._version_histories[component_type][name] = version_history |
| 86 | else: |
| 87 | version_history = self._version_histories[component_type][name] |
| 88 | |
| 89 | version_history.add_version(version, description, metadata) |
| 90 | |
| 91 | # Save to JSON after registering version |
| 92 | await self.save_to_json() |
| 93 | |
| 94 | return version_history |
| 95 | |
| 96 | async def list(self) -> Dict[str, Dict[str, List[str]]]: |
| 97 | """List all versions for all components |
no test coverage detected