Bas Nijholt
b86f6d190f
Add Rich styling to CLI output
...
- Service names in cyan, host names in magenta
- Success checkmarks, warning/error symbols
- Colored sync diff indicators (+/-/~)
- Unicode arrows for migrations
2025-12-13 23:40:07 -08:00
Bas Nijholt
8cff744c08
Add hatch-vcs for automatic version management
...
Version is now derived from git tags instead of hardcoded.
2025-12-13 14:42:37 -08:00
Bas Nijholt
0f2499038d
Organization improvements ( #2 )
2025-12-11 11:25:23 -08:00
Bas Nijholt
68aab82ef9
Rename project from sdc to compose-farm
...
- Package: sdc → compose_farm
- CLI command: sdc → compose-farm
- Config file: sdc.yaml → compose-farm.yaml
- Config path: ~/.config/sdc/ → ~/.config/compose-farm/
- Updated all documentation, tests, and examples
2025-12-11 09:54:03 -08:00
Bas Nijholt
f1bb33c646
Add pytest test suite
...
- Tests for config module (Host, Config, load_config)
- Tests for ssh module (local detection, command execution)
- 30 tests, all passing
- pytest-asyncio for async test support
2025-12-11 09:28:54 -08:00
Bas Nijholt
72faa02f15
Add pre-commit with ruff, mypy, and standard hooks
...
- ruff check + format with ALL rules (ignoring D, ANN, FBT, T201)
- mypy strict mode with pydantic plugin
- Standard pre-commit hooks (trailing whitespace, end-of-file, etc.)
- Fix all type annotations for strict mypy compliance
2025-12-11 09:22:41 -08:00
Bas Nijholt
4baf908b36
Initial implementation of SDC (Simple Distributed Compose)
...
A minimal CLI tool to run docker compose commands across multiple hosts via SSH.
Features:
- Pydantic config parsing (hosts, services mapping)
- asyncssh for parallel command execution with streaming output
- Typer CLI with up, down, pull, restart, update, logs, ps commands
- Config search: ./sdc.yaml or ~/.config/sdc/sdc.yaml
2025-12-11 09:19:33 -08:00