supervaizer 0.10.9__tar.gz → 0.10.10__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 (78) hide show
  1. {supervaizer-0.10.9 → supervaizer-0.10.10}/PKG-INFO +1 -1
  2. {supervaizer-0.10.9 → supervaizer-0.10.10}/pyproject.toml +1 -1
  3. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/__version__.py +1 -1
  4. supervaizer-0.10.10/src/supervaizer/admin/static/favicon.ico +0 -0
  5. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/server.py +20 -10
  6. {supervaizer-0.10.9 → supervaizer-0.10.10}/.gitignore +0 -0
  7. {supervaizer-0.10.9 → supervaizer-0.10.10}/LICENSE.md +0 -0
  8. {supervaizer-0.10.9 → supervaizer-0.10.10}/README.md +0 -0
  9. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/__init__.py +0 -0
  10. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/account.py +0 -0
  11. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/account_service.py +0 -0
  12. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/routes.py +0 -0
  13. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/static/js/job-start-form.js +0 -0
  14. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/agent_detail.html +0 -0
  15. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/agents.html +0 -0
  16. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/agents_grid.html +0 -0
  17. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/base.html +0 -0
  18. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/case_detail.html +0 -0
  19. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/cases_list.html +0 -0
  20. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/cases_table.html +0 -0
  21. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/console.html +0 -0
  22. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/dashboard.html +0 -0
  23. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/index.html +0 -0
  24. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/job_detail.html +0 -0
  25. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/job_start_test.html +0 -0
  26. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/jobs_list.html +0 -0
  27. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/jobs_table.html +0 -0
  28. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/navigation.html +0 -0
  29. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/recent_activity.html +0 -0
  30. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/server.html +0 -0
  31. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/server_status_cards.html +0 -0
  32. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/admin/templates/supervaize_instructions.html +0 -0
  33. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/agent.py +0 -0
  34. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/case.py +0 -0
  35. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/cli.py +0 -0
  36. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/common.py +0 -0
  37. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/__init__.py +0 -0
  38. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/cli.py +0 -0
  39. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/commands/__init__.py +0 -0
  40. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/commands/clean.py +0 -0
  41. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/commands/down.py +0 -0
  42. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/commands/local.py +0 -0
  43. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/commands/plan.py +0 -0
  44. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/commands/status.py +0 -0
  45. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/commands/up.py +0 -0
  46. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/docker.py +0 -0
  47. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/driver_factory.py +0 -0
  48. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/drivers/__init__.py +0 -0
  49. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/drivers/aws_app_runner.py +0 -0
  50. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/drivers/base.py +0 -0
  51. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/drivers/cloud_run.py +0 -0
  52. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/drivers/do_app_platform.py +0 -0
  53. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/health.py +0 -0
  54. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/state.py +0 -0
  55. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/templates/Dockerfile.template +0 -0
  56. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/templates/debug_env.py +0 -0
  57. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/templates/docker-compose.yml.template +0 -0
  58. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/templates/dockerignore.template +0 -0
  59. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/templates/entrypoint.sh +0 -0
  60. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/deploy/utils.py +0 -0
  61. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/event.py +0 -0
  62. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/examples/controller_template.py +0 -0
  63. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/instructions.py +0 -0
  64. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/job.py +0 -0
  65. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/job_service.py +0 -0
  66. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/lifecycle.py +0 -0
  67. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/parameter.py +0 -0
  68. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/protocol/__init__.py +0 -0
  69. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/protocol/a2a/__init__.py +0 -0
  70. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/protocol/a2a/model.py +0 -0
  71. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/protocol/a2a/routes.py +0 -0
  72. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/py.typed +0 -0
  73. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/routes.py +0 -0
  74. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/server_utils.py +0 -0
  75. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/storage.py +0 -0
  76. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/telemetry.py +0 -0
  77. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/utils/__init__.py +0 -0
  78. {supervaizer-0.10.9 → supervaizer-0.10.10}/src/supervaizer/utils/version_check.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: supervaizer
3
- Version: 0.10.9
3
+ Version: 0.10.10
4
4
  Summary: Controller system for Supervaize
5
5
  Project-URL: Homepage, https://supervaize.com
6
6
  Project-URL: Repository, https://github.com/supervaize/supervaizer
@@ -121,7 +121,7 @@ mypy_path = "src"
121
121
  disallow_any_expr = false
122
122
 
123
123
  [tool.bumpversion]
124
- current_version = "0.10.9"
124
+ current_version = "0.10.10"
125
125
  commit = true
126
126
  tag = true
127
127
  tag_name = "v{new_version}"
@@ -5,6 +5,6 @@
5
5
  # https://mozilla.org/MPL/2.0/.
6
6
 
7
7
 
8
- VERSION = "0.10.9"
8
+ VERSION = "0.10.10"
9
9
  API_VERSION = "v1"
10
10
  TELEMETRY_VERSION = "v1"
@@ -20,7 +20,7 @@ from cryptography.hazmat.primitives.asymmetric import rsa
20
20
  from cryptography.hazmat.primitives.asymmetric.rsa import RSAPrivateKey, RSAPublicKey
21
21
  from fastapi import FastAPI, HTTPException, Request, Security, status
22
22
  from fastapi.exceptions import RequestValidationError
23
- from fastapi.responses import HTMLResponse, JSONResponse
23
+ from fastapi.responses import FileResponse, HTMLResponse, JSONResponse
24
24
  from fastapi.security import APIKeyHeader
25
25
  from fastapi.templating import Jinja2Templates
26
26
  from pydantic import BaseModel, field_validator, Field
@@ -377,6 +377,13 @@ class Server(ServerAbstract):
377
377
  # Save server info to storage for admin interface
378
378
  save_server_info_to_storage(self)
379
379
 
380
+ # Favicon (served at root so /docs, /redoc, etc. pick it up)
381
+ _favicon_path = Path(__file__).parent / "admin" / "static" / "favicon.ico"
382
+
383
+ @self.app.get("/favicon.ico", include_in_schema=False)
384
+ async def favicon() -> FileResponse:
385
+ return FileResponse(_favicon_path, media_type="image/x-icon")
386
+
380
387
  # Home page (template in admin/templates)
381
388
  _home_templates = Jinja2Templates(
382
389
  directory=str(Path(__file__).parent / "admin" / "templates")
@@ -487,7 +494,9 @@ class Server(ServerAbstract):
487
494
  "agents": [agent.registration_info for agent in self.agents],
488
495
  }
489
496
 
490
- def launch(self, log_level: Optional[str] = "INFO") -> None:
497
+ def launch(
498
+ self, log_level: Optional[str] = "INFO", start_uvicorn: bool = False
499
+ ) -> None:
491
500
  if log_level:
492
501
  log.remove()
493
502
  log.add(
@@ -546,15 +555,16 @@ class Server(ServerAbstract):
546
555
  if updated_agent:
547
556
  log.info(f"[Server launch] Updated agent {updated_agent.name}")
548
557
 
549
- import uvicorn
558
+ if start_uvicorn:
559
+ import uvicorn
550
560
 
551
- uvicorn.run(
552
- self.app,
553
- host=self.host,
554
- port=self.port,
555
- reload=self.reload,
556
- log_level=log_level,
557
- )
561
+ uvicorn.run(
562
+ self.app,
563
+ host=self.host,
564
+ port=self.port,
565
+ reload=self.reload,
566
+ log_level=log_level,
567
+ )
558
568
 
559
569
  def instructions(self) -> None:
560
570
  server_url = f"http://{self.host}:{self.port}"
File without changes
File without changes
File without changes