aboutsummaryrefslogtreecommitdiffstats
path: root/main.py
diff options
context:
space:
mode:
Diffstat (limited to 'main.py')
-rw-r--r--main.py25
1 files changed, 22 insertions, 3 deletions
diff --git a/main.py b/main.py
index ca23f58..90a0eb8 100644
--- a/main.py
+++ b/main.py
@@ -1,20 +1,39 @@
import argparse
import sys
-from switches import make_switch_labels
from cables import make_cable_labels
+from gondul import fetch_gondul_switches
+from switches import make_switch_labels
parser = argparse.ArgumentParser("Label generator script 2000")
parser.add_argument("labler", type=str,
help="The label function to run. Either [c]ables or [s]witches.")
+parser.add_argument("--gondul-user", type=str,
+ help="Gondul username. Overrides env GONDUL_USERNAME")
+parser.add_argument("--gondul-pass", type=str,
+ help="Gondul password. Overrides env GONDUL_PASSWORD")
+parser.add_argument("--gondul-api", type=str,
+ help="Gondul API base. Overrides env GONDUL_API")
+parser.add_argument("--gondul-switches", type=str,
+ help="Gondul switches endpoint. Overrides env GONDUL_SWITCHES_ENDPOINT")
+parser.add_argument("--match-switches", type=str, default="^e(.*)",
+ help="Regex for matching switches")
if __name__ == "__main__":
args = parser.parse_args()
+ switches = fetch_gondul_switches(
+ api=args.gondul_api,
+ endpoint=args.gondul_switches,
+ username=args.gondul_user,
+ password=args.gondul_pass,
+ match=args.match_switches,
+ )
+
if args.labler[0] == "c":
- make_cable_labels()
+ make_cable_labels(switches)
elif args.labler[0] == "s":
- make_switch_labels()
+ make_switch_labels(switches)
else:
parser.print_help()
sys.exit("Invalid labler operation.")