Skip to main content

argparse

argparse är en inbyggd funktion som gör att man kan skicka med variablar från CLIt när man kör ett jobb.

Ex:

import argparse

def main():
    # Argumenthantering
    parser = argparse.ArgumentParser(
        description="Kör Nornir-jobb med filtrering"
    )

    parser.add_argument(
        "--limit",
        help="Host eller grupp att köra mot",
        required=False
    )

    parser.add_argument(
        "--debug",
        help="Visa detaljerad output vid fel",
        action="store_true"
    )

    parser.add_argument(
        "--user",
        help="Användarnamn att logga in med"
    )

    args = parser.parse_args()

    debug_print = args.debug

    # Fråga efter credentials
    if args.user:
        username = args.user
    else:
        username = input("Ange användarnamn: ")

Det som står vid help= kan man sedan få fram i CLIt:

uv run run.py --help
usage: run.py [-h] [--limit LIMIT] [--debug] [--user USER]

Kör Nornir-jobb med filtrering

options:
  -h, --help     show this help message and exit
  --limit LIMIT  Host eller grupp att köra mot
  --debug        Visa detaljerad output vid fel
  --user USER    Användarnamn att logga in med