fastapi-cloud-cli 0.16.0__tar.gz → 0.17.0__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 (60) hide show
  1. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/PKG-INFO +2 -2
  2. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/pyproject.toml +2 -2
  3. fastapi_cloud_cli-0.17.0/src/fastapi_cloud_cli/__init__.py +1 -0
  4. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/cli.py +27 -0
  5. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/commands/deploy.py +236 -193
  6. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/commands/env.py +74 -62
  7. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/commands/link.py +29 -27
  8. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/commands/login.py +12 -3
  9. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/commands/logs.py +2 -1
  10. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/commands/setup_ci.py +14 -12
  11. fastapi_cloud_cli-0.17.0/src/fastapi_cloud_cli/commands/whoami.py +33 -0
  12. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/utils/api.py +87 -6
  13. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/utils/auth.py +23 -15
  14. fastapi_cloud_cli-0.17.0/src/fastapi_cloud_cli/utils/cli.py +68 -0
  15. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/utils/sentry.py +2 -2
  16. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/conftest.py +7 -0
  17. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_auth.py +2 -2
  18. fastapi_cloud_cli-0.17.0/tests/test_cli.py +37 -0
  19. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_cli_deploy.py +3 -0
  20. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_cli_login.py +51 -0
  21. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_cli_whoami.py +16 -1
  22. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_sentry.py +16 -0
  23. fastapi_cloud_cli-0.16.0/src/fastapi_cloud_cli/__init__.py +0 -1
  24. fastapi_cloud_cli-0.16.0/src/fastapi_cloud_cli/commands/whoami.py +0 -33
  25. fastapi_cloud_cli-0.16.0/src/fastapi_cloud_cli/utils/cli.py +0 -140
  26. fastapi_cloud_cli-0.16.0/tests/test_cli.py +0 -11
  27. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/LICENSE +0 -0
  28. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/README.md +0 -0
  29. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/scripts/add_latest_release_date.py +0 -0
  30. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/scripts/format.sh +0 -0
  31. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/scripts/lint.sh +0 -0
  32. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/scripts/test-cov-html.sh +0 -0
  33. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/scripts/test.sh +0 -0
  34. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/__main__.py +0 -0
  35. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/commands/__init__.py +0 -0
  36. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/commands/logout.py +0 -0
  37. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/commands/unlink.py +0 -0
  38. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/config.py +0 -0
  39. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/logging.py +0 -0
  40. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/py.typed +0 -0
  41. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/utils/__init__.py +0 -0
  42. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/utils/apps.py +0 -0
  43. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/utils/config.py +0 -0
  44. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/utils/env.py +0 -0
  45. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/src/fastapi_cloud_cli/utils/progress_file.py +0 -0
  46. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/__init__.py +0 -0
  47. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_api_client.py +0 -0
  48. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_archive.py +0 -0
  49. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_cli_link.py +0 -0
  50. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_cli_logout.py +0 -0
  51. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_cli_setup_ci.py +0 -0
  52. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_cli_unlink.py +0 -0
  53. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_config.py +0 -0
  54. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_deploy_utils.py +0 -0
  55. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_env_delete.py +0 -0
  56. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_env_list.py +0 -0
  57. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_env_set.py +0 -0
  58. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_logs.py +0 -0
  59. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/test_progress_file.py +0 -0
  60. {fastapi_cloud_cli-0.16.0 → fastapi_cloud_cli-0.17.0}/tests/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fastapi-cloud-cli
3
- Version: 0.16.0
3
+ Version: 0.17.0
4
4
  Summary: Deploy and manage FastAPI Cloud apps from the command line 🚀
5
5
  Author-Email: Patrick Arminio <patrick@fastapilabs.com>
6
6
  License: MIT
@@ -38,7 +38,7 @@ Requires-Dist: pydantic[email]>=2.7.4; python_version < "3.13"
38
38
  Requires-Dist: pydantic[email]>=2.8.0; python_version == "3.13"
39
39
  Requires-Dist: pydantic[email]>=2.12.0; python_version >= "3.14"
40
40
  Requires-Dist: sentry-sdk>=2.20.0
41
- Requires-Dist: fastar>=0.8.0
41
+ Requires-Dist: fastar>=0.10.0
42
42
  Provides-Extra: standard
43
43
  Requires-Dist: uvicorn[standard]>=0.15.0; extra == "standard"
44
44
  Description-Content-Type: text/markdown
@@ -38,9 +38,9 @@ dependencies = [
38
38
  "pydantic[email] >= 2.8.0; python_version == '3.13'",
39
39
  "pydantic[email] >= 2.12.0; python_version >= '3.14'",
40
40
  "sentry-sdk >= 2.20.0",
41
- "fastar >= 0.8.0",
41
+ "fastar >= 0.10.0",
42
42
  ]
43
- version = "0.16.0"
43
+ version = "0.17.0"
44
44
 
45
45
  [project.license]
46
46
  text = "MIT"
@@ -0,0 +1 @@
1
+ __version__ = "0.17.0"
@@ -1,5 +1,9 @@
1
+ from typing import Annotated
2
+
1
3
  import typer
4
+ from rich import print
2
5
 
6
+ from . import __version__
3
7
  from .commands.deploy import deploy
4
8
  from .commands.env import env_app
5
9
  from .commands.link import link
@@ -16,11 +20,34 @@ setup_logging()
16
20
 
17
21
  app = typer.Typer(rich_markup_mode="rich")
18
22
 
23
+
24
+ def version_callback(value: bool) -> None:
25
+ if value:
26
+ print(f"FastAPI Cloud CLI version: [green]{__version__}[/green]")
27
+ raise typer.Exit()
28
+
29
+
19
30
  cloud_app = typer.Typer(
20
31
  rich_markup_mode="rich",
21
32
  help="Manage [bold]FastAPI[/bold] Cloud deployments. 🚀",
33
+ no_args_is_help=True,
22
34
  )
23
35
 
36
+
37
+ @cloud_app.callback()
38
+ def cloud_main(
39
+ version: Annotated[
40
+ bool,
41
+ typer.Option(
42
+ "--version",
43
+ callback=version_callback,
44
+ is_eager=True,
45
+ help="Show the version and exit.",
46
+ ),
47
+ ] = False,
48
+ ) -> None: ...
49
+
50
+
24
51
  # TODO: use the app structure
25
52
 
26
53
  # Additional commands