commit fc0d85c9b5eb8e0dda8ee2711f9e750a6d4371e7 Author: Tom Teichert Date: Fri May 24 12:02:29 2024 +0200 init diff --git a/README.md b/README.md new file mode 100644 index 0000000..decf8e9 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# My SAT stuff diff --git a/delete_hosts.py b/delete_hosts.py new file mode 100644 index 0000000..3d139b0 --- /dev/null +++ b/delete_hosts.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python3 +import os +import argparse + +parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter) +parser.add_argument("-s", "--single-host", help="delete single host from SAT. enter name WITHOUT domain. can not be used with -f.", type=str) +parser.add_argument("-f", "--filename", help="add a specific filename. otherwise deleted_machines.txt will be used.", type=str) +parser.add_argument("-d", "--dryrun", help="add true to do dryrun. this will only output the command used.", type=str) +args = parser.parse_args() + +def delete_host(): + machine_name = machine.strip() + ".lgt.com" + if args.dryrun == "true": + print(f"hammer host delete --name {machine_name}") + else: + os.system(f"hammer host delete --name {machine_name}") + +if args.filename and args.single_host: + print("ERROR: filename and single host option can not be used together... exiting...") + exit(1) + +if args.single_host: + machine = args.single_host + answer = input(f"you really want to delete {machine} from SAT? (y/n) ") + if answer != "y": + exit(1) + delete_host() +else: + if args.filename: + filename = args.filename + else: + filename = "deleted_machines.txt" + print("Will use default filename deleted_machines.txt") + + if not os.path.exists(filename): + print("ERROR: provided File does not exists... exiting...") + exit(1) + + if filename: + file = open(filename, "r") + answer = input(f"you really want to delete {file.read()} from SAT? (y/n) ") + + if answer != "y": + exit(1) + + file = open(filename, "r") + + for machine in file: + delete_host() \ No newline at end of file