Add setup_fingerprint_check/src/setup_fingerprint_check/cli.py

This commit is contained in:
Mika 2026-02-27 10:56:50 +00:00
parent 8b0abb99cc
commit 0805c7a27f

View file

@ -0,0 +1,41 @@
import argparse
import sys
from setup_fingerprint_check.core import check_setup_fingerprint
def main() -> None:
"""CLI entrypoint for setup fingerprint verification."""
parser = argparse.ArgumentParser(
description="Verify that the current setup fingerprint matches the expected one."
)
parser.add_argument(
"--expected",
required=True,
help="Expected fingerprint of the test setup.",
)
args = parser.parse_args()
expected_fingerprint: str = args.expected.strip()
# Basic validation for input integrity
if not expected_fingerprint:
print("Error: Expected fingerprint cannot be empty.", file=sys.stderr)
sys.exit(1)
try:
matches = check_setup_fingerprint(expected_fingerprint)
except Exception as exc: # noqa: BLE001
print(f"Error: Fingerprint verification failed ({exc}).", file=sys.stderr)
sys.exit(1)
if matches:
print("valid")
sys.exit(0)
else:
print("mismatch")
sys.exit(1)
if __name__ == "__main__":
main()