Update 2025.leif

This commit is contained in:
Anders Englöf Ytterström 2025-11-22 20:02:45 +00:00
parent 57d91aad58
commit d4923adf6e

View file

@ -3,6 +3,7 @@ import argparse
import subprocess import subprocess
import textwrap import textwrap
def act(cmd, dry_run=True, verbose=True): def act(cmd, dry_run=True, verbose=True):
if dry_run: if dry_run:
print(f"will execute: {cmd}") print(f"will execute: {cmd}")
@ -11,33 +12,41 @@ def act(cmd, dry_run=True, verbose=True):
print(cmd) print(cmd)
subprocess.run(cmd.split()) subprocess.run(cmd.split())
parser = argparse.ArgumentParser( parser = argparse.ArgumentParser(
prog='leif', prog="leif",
formatter_class=argparse.RawTextHelpFormatter, formatter_class=argparse.RawTextHelpFormatter,
description=textwrap.dedent(''' description=textwrap.dedent("""
Verktygslåda för att hantera och monitorera API Gateway-tjänstens systemd-tjänst och container. Verktygslåda för att hantera och monitorera API Gateway-tjänstens systemd-tjänst och container.
'''), """),
epilog=textwrap.dedent(''' epilog=textwrap.dedent("""
Kontakt: Integration, Team Flex <datautbyte@trafikverket.se> Kontakt: Integration, Team Flex <datautbyte@trafikverket.se>
För dokumentation, se wiki: För dokumentation, se wiki:
- wiki.trafikverket.local/IKC - wiki.trafikverket.local/IKC
''')) """),
parser.add_argument('-v', '--verbose', )
help="Utökad utskrift vid körning", parser.add_argument(
action='store_true') "-v", "--verbose", help="Utökad utskrift vid körning", action="store_true"
parser.add_argument('-d', '--dry-run', )
help="Simulera åtgärd istället", parser.add_argument(
action='store_true') "-d", "--dry-run", help="Simulera åtgärd istället", action="store_true"
)
subparsers = parser.add_subparsers(dest="action") subparsers = parser.add_subparsers(dest="action")
subparsers.add_parser("inspect", help="inspektera den körande containern") subparsers.add_parser("inspect", help="inspektera den körande containern")
logs_parser = subparsers.add_parser("logs", help="skriv ut containerns logg") logs_parser = subparsers.add_parser("logs", help="skriv ut containerns logg")
logs_parser.add_argument("-f", "--follow", action="store_true", help="svansa och följ loggen") logs_parser.add_argument(
"-f", "--follow", action="store_true", help="svansa och följ loggen"
)
subparsers.add_parser("restart", help="starta om systemd-tjänsten") subparsers.add_parser("restart", help="starta om systemd-tjänsten")
subparsers.add_parser("shell", help="initiera ett bash-skal inuti den körande containern") subparsers.add_parser(
"shell", help="initiera ett bash-skal inuti den körande containern"
)
subparsers.add_parser("start", help="starta systemd-tjänsten") subparsers.add_parser("start", help="starta systemd-tjänsten")
subparsers.add_parser("status", help="skriv ut container-ID och upptid för den körande containern") subparsers.add_parser(
"status", help="skriv ut container-ID och upptid för den körande containern"
)
subparsers.add_parser("stop", help="stoppa systemd-tjänsten") subparsers.add_parser("stop", help="stoppa systemd-tjänsten")
subparsers.add_parser("whoami", help="skriv ut containeravbildens ProGet-ID") subparsers.add_parser("whoami", help="skriv ut containeravbildens ProGet-ID")
@ -48,15 +57,25 @@ if __name__ == "__main__":
case "inspect": case "inspect":
act("podman inspect api_gateway", args.dry_run, args.verbose) act("podman inspect api_gateway", args.dry_run, args.verbose)
case "restart": case "restart":
act("systemcl --user restart container-api-gateway", args.dry_run, args.verbose) act(
"systemcl --user restart container-api-gateway",
args.dry_run,
args.verbose,
)
case "shell": case "shell":
act("podman exec -it api_gateway /bin/bash", args.dry_run, args.verbose) act("podman exec -it api_gateway /bin/bash", args.dry_run, args.verbose)
case "start": case "start":
act("systemcl --user start container-api-gateway", args.dry_run, args.verbose) act(
"systemcl --user start container-api-gateway",
args.dry_run,
args.verbose,
)
case "status": case "status":
act("podman ps --format '{{.ID}}'", args.dry_run, args.verbose) act("podman ps --format '{{.ID}}'", args.dry_run, args.verbose)
case "stop": case "stop":
act("systemcl --user stop container-api-gateway", args.dry_run, args.verbose) act(
"systemcl --user stop container-api-gateway", args.dry_run, args.verbose
)
case "whoami": case "whoami":
act("podman inspect api_gateway | grep Image", args.dry_run, args.verbose) act("podman inspect api_gateway | grep Image", args.dry_run, args.verbose)
case "logs": case "logs":