llamactl 0.4.0__tar.gz → 0.4.1__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 (46) hide show
  1. {llamactl-0.4.0 → llamactl-0.4.1}/PKG-INFO +3 -3
  2. {llamactl-0.4.0 → llamactl-0.4.1}/pyproject.toml +3 -3
  3. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/commands/dev.py +36 -5
  4. {llamactl-0.4.0 → llamactl-0.4.1}/README.md +0 -0
  5. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/__init__.py +0 -0
  6. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/app.py +0 -0
  7. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/auth/client.py +0 -0
  8. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/client.py +0 -0
  9. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/commands/aliased_group.py +0 -0
  10. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/commands/auth.py +0 -0
  11. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/commands/deployment.py +0 -0
  12. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/commands/env.py +0 -0
  13. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/commands/init.py +0 -0
  14. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/commands/pkg.py +0 -0
  15. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/commands/serve.py +0 -0
  16. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/config/_config.py +0 -0
  17. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/config/_migrations.py +0 -0
  18. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/config/auth_service.py +0 -0
  19. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/config/env_service.py +0 -0
  20. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/config/migrations/0001_init.sql +0 -0
  21. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/config/migrations/0002_add_auth_fields.sql +0 -0
  22. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/config/migrations/__init__.py +0 -0
  23. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/config/schema.py +0 -0
  24. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/debug.py +0 -0
  25. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/env.py +0 -0
  26. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/interactive_prompts/session_utils.py +0 -0
  27. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/interactive_prompts/utils.py +0 -0
  28. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/options.py +0 -0
  29. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/pkg/__init__.py +0 -0
  30. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/pkg/defaults.py +0 -0
  31. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/pkg/options.py +0 -0
  32. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/pkg/utils.py +0 -0
  33. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/py.typed +0 -0
  34. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/styles.py +0 -0
  35. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/textual/deployment_form.py +0 -0
  36. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/textual/deployment_help.py +0 -0
  37. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/textual/deployment_monitor.py +0 -0
  38. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/textual/git_validation.py +0 -0
  39. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/textual/github_callback_server.py +0 -0
  40. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/textual/llama_loader.py +0 -0
  41. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/textual/secrets_form.py +0 -0
  42. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/textual/styles.tcss +0 -0
  43. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/utils/env_inject.py +0 -0
  44. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/utils/redact.py +0 -0
  45. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/utils/retry.py +0 -0
  46. {llamactl-0.4.0 → llamactl-0.4.1}/src/llama_deploy/cli/utils/version.py +0 -0
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: llamactl
3
- Version: 0.4.0
3
+ Version: 0.4.1
4
4
  Summary: A command-line interface for managing LlamaDeploy projects and deployments
5
5
  Author: Adrian Lyjak
6
6
  Author-email: Adrian Lyjak <adrianlyjak@gmail.com>
7
7
  License: MIT
8
- Requires-Dist: llama-deploy-core[client]>=0.4.0,<0.5.0
9
- Requires-Dist: llama-deploy-appserver>=0.4.0,<0.5.0
8
+ Requires-Dist: llama-deploy-core[client]>=0.4.1,<0.5.0
9
+ Requires-Dist: llama-deploy-appserver>=0.4.1,<0.5.0
10
10
  Requires-Dist: vibe-llama-core>=0.1.0
11
11
  Requires-Dist: rich>=13.0.0
12
12
  Requires-Dist: questionary>=2.0.0
@@ -14,7 +14,7 @@ dev = [
14
14
 
15
15
  [project]
16
16
  name = "llamactl"
17
- version = "0.4.0"
17
+ version = "0.4.1"
18
18
  description = "A command-line interface for managing LlamaDeploy projects and deployments"
19
19
  readme = "README.md"
20
20
  license = {text = "MIT"}
@@ -23,8 +23,8 @@ authors = [
23
23
  ]
24
24
  requires-python = ">=3.10, <4"
25
25
  dependencies = [
26
- "llama-deploy-core[client]>=0.4.0,<0.5.0",
27
- "llama-deploy-appserver>=0.4.0,<0.5.0",
26
+ "llama-deploy-core[client]>=0.4.1,<0.5.0",
27
+ "llama-deploy-appserver>=0.4.1,<0.5.0",
28
28
  "vibe-llama-core>=0.1.0",
29
29
  "rich>=13.0.0",
30
30
  "questionary>=2.0.0",
@@ -48,9 +48,20 @@ dev.add_command(serve_command, name="serve")
48
48
  default=DEFAULT_DEPLOYMENT_FILE_PATH,
49
49
  type=_ClickPath(dir_okay=True, resolve_path=True, path_type=Path),
50
50
  )
51
+ @click.option(
52
+ "--validate-env",
53
+ is_flag=True,
54
+ help=(
55
+ "Validate that required environment variables are set. By default, missing "
56
+ "env vars are filled with placeholder values to allow structural validation "
57
+ "without actual environment variable values."
58
+ ),
59
+ )
51
60
  @interactive_option
52
61
  @global_options
53
- def validate_command(deployment_file: Path, interactive: bool) -> None:
62
+ def validate_command(
63
+ deployment_file: Path, validate_env: bool, interactive: bool
64
+ ) -> None:
54
65
  """Validate workflows defined in the deployment configuration."""
55
66
  config_dir = _ensure_project_layout(
56
67
  deployment_file, command_name="llamactl dev validate"
@@ -60,17 +71,25 @@ def validate_command(deployment_file: Path, interactive: bool) -> None:
60
71
  deployment_file, interactive, require_cloud=False
61
72
  )
62
73
 
74
+ # By default, skip env validation (fill missing with placeholders)
75
+ skip_env_validation = not validate_env
76
+
63
77
  prepare_server(
64
78
  deployment_file=deployment_file,
65
79
  install=True,
66
80
  build=False,
67
81
  install_ui_deps=False,
82
+ skip_env_validation=skip_env_validation,
68
83
  )
69
84
 
70
85
  # Delegate venv-targeted invocation to the appserver helper (mirrors start_server_in_target_venv)
71
86
 
72
87
  try:
73
- start_preflight_in_target_venv(cwd=Path.cwd(), deployment_file=deployment_file)
88
+ start_preflight_in_target_venv(
89
+ cwd=Path.cwd(),
90
+ deployment_file=deployment_file,
91
+ skip_env_validation=skip_env_validation,
92
+ )
74
93
  except subprocess.CalledProcessError as exc:
75
94
  rprint("[red]Workflow validation failed. See errors above.[/red]")
76
95
  raise Exit(exc.returncode)
@@ -240,7 +259,12 @@ def _prepare_environment(
240
259
 
241
260
 
242
261
  def prepare_server(
243
- *, deployment_file: Path, install: bool, build: bool, install_ui_deps: bool
262
+ *,
263
+ deployment_file: Path,
264
+ install: bool,
265
+ build: bool,
266
+ install_ui_deps: bool,
267
+ skip_env_validation: bool = False,
244
268
  ) -> None:
245
269
  """Thin wrapper so tests can monkeypatch `dev.prepare_server` without importing appserver at import time."""
246
270
  from llama_deploy.appserver.app import prepare_server as _prepare_server
@@ -250,16 +274,23 @@ def prepare_server(
250
274
  install=install,
251
275
  build=build,
252
276
  install_ui_deps=install_ui_deps,
277
+ skip_env_validation=skip_env_validation,
253
278
  )
254
279
 
255
280
 
256
- def start_preflight_in_target_venv(*, cwd: Path, deployment_file: Path) -> None:
281
+ def start_preflight_in_target_venv(
282
+ *, cwd: Path, deployment_file: Path, skip_env_validation: bool = False
283
+ ) -> None:
257
284
  """Thin wrapper so tests can monkeypatch `dev.start_preflight_in_target_venv`."""
258
285
  from llama_deploy.appserver.app import (
259
286
  start_preflight_in_target_venv as _start_preflight_in_target_venv,
260
287
  )
261
288
 
262
- _start_preflight_in_target_venv(cwd=cwd, deployment_file=deployment_file)
289
+ _start_preflight_in_target_venv(
290
+ cwd=cwd,
291
+ deployment_file=deployment_file,
292
+ skip_env_validation=skip_env_validation,
293
+ )
263
294
 
264
295
 
265
296
  def start_export_json_graph_in_target_venv(
File without changes