Coverage for src / repo_sync_kitty / commands / init.py: 100%

14 statements  

« prev     ^ index     » next       coverage.py v7.13.0, created at 2025-12-23 09:31 -0500

1"""Init command: create new manifest file.""" 

2 

3from pathlib import Path 

4from typing import Annotated 

5 

6import typer 

7from rich.console import Console 

8 

9console = Console() 

10 

11 

12def init( 

13 output: Annotated[ 

14 Path, 

15 typer.Option("--output", "-o", help="Output path for manifest.toml"), 

16 ] = Path("manifest.toml"), 

17 scan_dir: Annotated[ 

18 Path | None, 

19 typer.Option("--scan-dir", help="Scan directory for existing repos"), 

20 ] = None, 

21 scan_forge: Annotated[ 

22 str | None, 

23 typer.Option("--scan-forge", help="Scan forge for repos (github, gitlab, bitbucket)"), 

24 ] = None, 

25 org: Annotated[ 

26 str | None, 

27 typer.Option("--org", help="Organization/user to scan on forge"), 

28 ] = None, 

29) -> None: 

30 """Create a new manifest.toml file.""" 

31 console.print("[yellow]init command not yet implemented[/yellow]") 

32 console.print(f" output: {output}") 

33 if scan_dir: 

34 console.print(f" scan_dir: {scan_dir}") 

35 if scan_forge: 

36 console.print(f" scan_forge: {scan_forge}") 

37 if org: 

38 console.print(f" org: {org}")