From 388d72ecf7d8df2321eb60f8a069a591f154d35d Mon Sep 17 00:00:00 2001 From: Devon Okafor Date: Wed, 14 Jan 2026 10:05:00 +0000 Subject: [PATCH] Initial commit: CLI scaffold --- LICENSE | 16 ++++++++++++++++ README.md | 9 +++++++++ harborwatch/cli.py | 16 ++++++++++++++++ requirements.txt | 1 + 4 files changed, 42 insertions(+) create mode 100644 LICENSE create mode 100644 README.md create mode 100644 harborwatch/cli.py create mode 100644 requirements.txt diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..f3bb2b6 --- /dev/null +++ b/LICENSE @@ -0,0 +1,16 @@ +MIT License + +Copyright (c) 2026 Holtrix Devtools + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. diff --git a/README.md b/README.md new file mode 100644 index 0000000..b97916c --- /dev/null +++ b/README.md @@ -0,0 +1,9 @@ +# HarborWatch CLI + +Internal command line tool for checking rollout status across Holtrix's service fleet. Wraps the deploy API with a friendlier interface for on-call engineers. + +## Usage + +``` +harborwatch status --service +``` diff --git a/harborwatch/cli.py b/harborwatch/cli.py new file mode 100644 index 0000000..9f0f9f5 --- /dev/null +++ b/harborwatch/cli.py @@ -0,0 +1,16 @@ +"""HarborWatch CLI entrypoint.""" + +import click + +from .checks import fleet_status + + +@click.group() +def main(): + """Check rollout status across the service fleet.""" + + +@main.command() +@click.option("--service", required=True, help="Service name to check") +def status(service): + click.echo(fleet_status(service)) diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..b80bce6 --- /dev/null +++ b/requirements.txt @@ -0,0 +1 @@ +click>=8.1.0