cyclo-manager 0.2.1.dev0__tar.gz → 0.2.1.dev1__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-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/PKG-INFO +3 -2
  2. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/README.md +2 -1
  3. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_manager.egg-info/PKG-INFO +3 -2
  4. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_manager_cli/cli.py +14 -5
  5. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/pyproject.toml +1 -1
  6. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_host_agent/__init__.py +0 -0
  7. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_host_agent/main.py +0 -0
  8. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_host_agent/models.py +0 -0
  9. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_host_agent/routers/__init__.py +0 -0
  10. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_host_agent/routers/repos.py +0 -0
  11. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_host_agent/routers/update.py +0 -0
  12. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_manager.egg-info/SOURCES.txt +0 -0
  13. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_manager.egg-info/dependency_links.txt +0 -0
  14. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_manager.egg-info/entry_points.txt +0 -0
  15. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_manager.egg-info/requires.txt +0 -0
  16. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_manager.egg-info/top_level.txt +0 -0
  17. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_manager_cli/__init__.py +0 -0
  18. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_manager_cli/config/config.yml +0 -0
  19. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/cyclo_manager_cli/docker/docker-compose.yml +0 -0
  20. {cyclo_manager-0.2.1.dev0 → cyclo_manager-0.2.1.dev1}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cyclo-manager
3
- Version: 0.2.1.dev0
3
+ Version: 0.2.1.dev1
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
@@ -90,7 +90,8 @@ python3 -m cyclo_manager_cli.cli up
90
90
  | `cyclo_manager up` | Install/refresh **cyclo_host_agent** (systemd unit, socket dir, sudoers), then `docker compose up -d` for **API + UI**, then `docker compose create --no-recreate` for **Zenoh** and **noVNC** (created but **not started**). Sets **`CYCLO_MANAGER_CONFIG_FILE`** to the bundled config. |
91
91
  | `cyclo_manager up --pull` | `docker compose pull` first, then the same as `up`. |
92
92
  | `cyclo_manager down` | **Tear down host agent** (stop/disable service, remove unit, sudoers, socket dir), then `docker compose down` for all services in the bundled compose file. |
93
- | `cyclo_manager update` | `docker compose down` (containers only — **host agent stays installed**), `pip install -U cyclo-manager`, `docker compose up` + create optional services, then **refresh host agent** (unit, socket, sudoers). Optional `--pull` pulls images before the final `up`. |
93
+ | `cyclo_manager update` | `docker compose down` (containers only — **host agent stays installed**), `pip install -U cyclo-manager`, **`docker compose pull`**, then `docker compose up` + create optional services, then **refresh host agent** (unit, socket, sudoers). |
94
+ | `cyclo_manager update --no-pull` | Same as `update`, but skip image pull (use locally cached images). |
94
95
  | `cyclo_manager --help` | Subcommand overview |
95
96
 
96
97
  **`down` vs `update`:** `down` removes the host agent entirely. `update` only stops Docker containers, upgrades the pip package, restarts the stack, and refreshes the host agent — it does **not** call `cyclo_manager down`.
@@ -76,7 +76,8 @@ python3 -m cyclo_manager_cli.cli up
76
76
  | `cyclo_manager up` | Install/refresh **cyclo_host_agent** (systemd unit, socket dir, sudoers), then `docker compose up -d` for **API + UI**, then `docker compose create --no-recreate` for **Zenoh** and **noVNC** (created but **not started**). Sets **`CYCLO_MANAGER_CONFIG_FILE`** to the bundled config. |
77
77
  | `cyclo_manager up --pull` | `docker compose pull` first, then the same as `up`. |
78
78
  | `cyclo_manager down` | **Tear down host agent** (stop/disable service, remove unit, sudoers, socket dir), then `docker compose down` for all services in the bundled compose file. |
79
- | `cyclo_manager update` | `docker compose down` (containers only — **host agent stays installed**), `pip install -U cyclo-manager`, `docker compose up` + create optional services, then **refresh host agent** (unit, socket, sudoers). Optional `--pull` pulls images before the final `up`. |
79
+ | `cyclo_manager update` | `docker compose down` (containers only — **host agent stays installed**), `pip install -U cyclo-manager`, **`docker compose pull`**, then `docker compose up` + create optional services, then **refresh host agent** (unit, socket, sudoers). |
80
+ | `cyclo_manager update --no-pull` | Same as `update`, but skip image pull (use locally cached images). |
80
81
  | `cyclo_manager --help` | Subcommand overview |
81
82
 
82
83
  **`down` vs `update`:** `down` removes the host agent entirely. `update` only stops Docker containers, upgrades the pip package, restarts the stack, and refreshes the host agent — it does **not** call `cyclo_manager down`.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cyclo-manager
3
- Version: 0.2.1.dev0
3
+ Version: 0.2.1.dev1
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
@@ -90,7 +90,8 @@ python3 -m cyclo_manager_cli.cli up
90
90
  | `cyclo_manager up` | Install/refresh **cyclo_host_agent** (systemd unit, socket dir, sudoers), then `docker compose up -d` for **API + UI**, then `docker compose create --no-recreate` for **Zenoh** and **noVNC** (created but **not started**). Sets **`CYCLO_MANAGER_CONFIG_FILE`** to the bundled config. |
91
91
  | `cyclo_manager up --pull` | `docker compose pull` first, then the same as `up`. |
92
92
  | `cyclo_manager down` | **Tear down host agent** (stop/disable service, remove unit, sudoers, socket dir), then `docker compose down` for all services in the bundled compose file. |
93
- | `cyclo_manager update` | `docker compose down` (containers only — **host agent stays installed**), `pip install -U cyclo-manager`, `docker compose up` + create optional services, then **refresh host agent** (unit, socket, sudoers). Optional `--pull` pulls images before the final `up`. |
93
+ | `cyclo_manager update` | `docker compose down` (containers only — **host agent stays installed**), `pip install -U cyclo-manager`, **`docker compose pull`**, then `docker compose up` + create optional services, then **refresh host agent** (unit, socket, sudoers). |
94
+ | `cyclo_manager update --no-pull` | Same as `update`, but skip image pull (use locally cached images). |
94
95
  | `cyclo_manager --help` | Subcommand overview |
95
96
 
96
97
  **`down` vs `update`:** `down` removes the host agent entirely. `update` only stops Docker containers, upgrades the pip package, restarts the stack, and refreshes the host agent — it does **not** call `cyclo_manager down`.
@@ -361,10 +361,19 @@ def cmd_update(args: argparse.Namespace) -> int:
361
361
  print('pip install timed out.', file=sys.stderr)
362
362
  return 1
363
363
 
364
+ if not getattr(args, 'no_pull', False):
365
+ print('Pulling latest images...')
366
+ try:
367
+ subprocess.run([*base, 'pull'], env=env, check=True)
368
+ except subprocess.CalledProcessError as e:
369
+ print(
370
+ f'Warning: docker compose pull failed (exit {e.returncode}); '
371
+ 'continuing with cached images.',
372
+ file=sys.stderr,
373
+ )
374
+
364
375
  print('Starting containers...')
365
376
  try:
366
- if getattr(args, 'pull', False):
367
- subprocess.run([*base, 'pull'], env=env, check=True)
368
377
  subprocess.run([*base, 'up', '-d', *COMPOSE_SERVICES_UP], env=env, check=True)
369
378
  subprocess.run(
370
379
  [*base, 'create', '--no-recreate', *COMPOSE_SERVICES_CREATE_ONLY],
@@ -407,12 +416,12 @@ def main() -> int:
407
416
 
408
417
  update_parser = sub.add_parser(
409
418
  'update',
410
- help='Down containers, pip install -U cyclo-manager, then up again',
419
+ help='Down containers, pip install -U cyclo-manager, pull images, then up again',
411
420
  )
412
421
  update_parser.add_argument(
413
- '--pull',
422
+ '--no-pull',
414
423
  action='store_true',
415
- help='Always pull images when running cyclo_manager up',
424
+ help='Skip docker compose pull before starting containers (use cached images only)',
416
425
  )
417
426
  update_parser.set_defaults(func=cmd_update)
418
427
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "cyclo-manager"
7
- version = "0.2.1.dev0"
7
+ version = "0.2.1.dev1"
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"