cyclo-manager 1.0.0.dev7__tar.gz → 1.0.0.dev8__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (20) hide show
  1. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/PKG-INFO +1 -1
  2. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_host_agent/routers/update.py +14 -2
  3. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_manager.egg-info/PKG-INFO +1 -1
  4. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/pyproject.toml +1 -1
  5. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/README.md +0 -0
  6. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_host_agent/__init__.py +0 -0
  7. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_host_agent/main.py +0 -0
  8. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_host_agent/models.py +0 -0
  9. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_host_agent/routers/__init__.py +0 -0
  10. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_host_agent/routers/repos.py +0 -0
  11. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_manager.egg-info/SOURCES.txt +0 -0
  12. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_manager.egg-info/dependency_links.txt +0 -0
  13. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_manager.egg-info/entry_points.txt +0 -0
  14. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_manager.egg-info/requires.txt +0 -0
  15. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_manager.egg-info/top_level.txt +0 -0
  16. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_manager_cli/__init__.py +0 -0
  17. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_manager_cli/cli.py +0 -0
  18. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_manager_cli/config/config.yml +0 -0
  19. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/cyclo_manager_cli/docker/docker-compose.yml +0 -0
  20. {cyclo_manager-1.0.0.dev7 → cyclo_manager-1.0.0.dev8}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cyclo-manager
3
- Version: 1.0.0.dev7
3
+ Version: 1.0.0.dev8
4
4
  Summary: cyclo_manager CLI: pip-installable launcher for cyclo_manager server and UI containers. Run 'cyclo_manager up' to start Docker stack.
5
5
  License-Expression: Apache-2.0
6
6
  Requires-Python: >=3.10
@@ -26,6 +26,15 @@ from fastapi import APIRouter, HTTPException, status
26
26
  router = APIRouter(prefix='/system', tags=['system'])
27
27
 
28
28
  _update_status: dict = {'phase': 'idle', 'output': '', 'error': ''}
29
+ MAX_OUTPUT_CHARS = 120_000
30
+
31
+
32
+ @router.get('/version')
33
+ async def get_host_agent_version() -> dict:
34
+ """Return the running cyclo_host_agent package version."""
35
+ from cyclo_manager_cli import __version__
36
+
37
+ return {'version': __version__}
29
38
 
30
39
 
31
40
  async def _run_update() -> None:
@@ -37,13 +46,16 @@ async def _run_update() -> None:
37
46
  stderr=asyncio.subprocess.PIPE,
38
47
  )
39
48
  stdout, stderr = await asyncio.wait_for(proc.communicate(), timeout=600)
40
- out = (stdout.decode() + stderr.decode()).strip()
41
- _update_status['output'] = out
49
+ out = (stdout.decode(errors='replace') + stderr.decode(errors='replace')).strip()
50
+ if len(out) > MAX_OUTPUT_CHARS:
51
+ out = out[-MAX_OUTPUT_CHARS:]
42
52
  if proc.returncode != 0:
43
53
  _update_status['phase'] = 'error'
54
+ _update_status['output'] = out
44
55
  _update_status['error'] = f'cyclo_manager update failed (exit {proc.returncode})'
45
56
  else:
46
57
  _update_status['phase'] = 'done'
58
+ _update_status['output'] = ''
47
59
  except asyncio.TimeoutError:
48
60
  _update_status['phase'] = 'error'
49
61
  _update_status['error'] = 'cyclo_manager update timed out'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cyclo-manager
3
- Version: 1.0.0.dev7
3
+ Version: 1.0.0.dev8
4
4
  Summary: cyclo_manager CLI: pip-installable launcher for cyclo_manager server and UI containers. Run 'cyclo_manager up' to start Docker stack.
5
5
  License-Expression: Apache-2.0
6
6
  Requires-Python: >=3.10
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "cyclo-manager"
7
- version = "1.0.0.dev7"
7
+ version = "1.0.0.dev8"
8
8
  description = "cyclo_manager CLI: pip-installable launcher for cyclo_manager server and UI containers. Run 'cyclo_manager up' to start Docker stack."
9
9
  readme = "README.md"
10
10
  license = "Apache-2.0"