unlink.py 846 B

1234567891011121314151617181920212223242526272829
  1. import logging
  2. import shutil
  3. from pathlib import Path
  4. from typing import Any
  5. import typer
  6. from fastapi_cloud_cli.utils.cli import get_rich_toolkit
  7. logger = logging.getLogger(__name__)
  8. def unlink() -> Any:
  9. """
  10. Unlink by deleting the `.fastapicloud` directory.
  11. """
  12. with get_rich_toolkit(minimal=True) as toolkit:
  13. config_dir = Path.cwd() / ".fastapicloud"
  14. if not config_dir.exists():
  15. toolkit.print(
  16. "No FastAPI Cloud configuration found in the current directory."
  17. )
  18. logger.debug(f"Configuration directory not found: {config_dir}")
  19. raise typer.Exit(1)
  20. shutil.rmtree(config_dir)
  21. toolkit.print("FastAPI Cloud configuration has been unlinked successfully! 🚀")
  22. logger.debug(f"Deleted configuration directory: {config_dir}")