parser: add auth group for (pw | token)

This commit is contained in:
Guilhem Saurel 2023-03-08 16:12:24 +01:00
parent 10dc53f753
commit 96bccc7498
2 changed files with 10 additions and 9 deletions

View File

@ -35,7 +35,7 @@ docker run --rm -it nim65s/matrix-webhook -h
```
```
usage: python -m matrix_webhook [-h] [-H HOST] [-P PORT] [-u MATRIX_URL] -i MATRIX_ID [-p MATRIX_PW] [-t MATRIX_TOKEN] -k API_KEY [-v]
usage: python -m matrix_webhook [-h] [-H HOST] [-P PORT] [-u MATRIX_URL] -i MATRIX_ID (-p MATRIX_PW | -t MATRIX_TOKEN) -k API_KEY [-v]
Configuration for Matrix Webhook.

View File

@ -33,16 +33,21 @@ parser.add_argument(
else {"required": True}
),
)
parser.add_argument(
auth = parser.add_mutually_exclusive_group(
required=all(v not in os.environ for v in ["MATRIX_PW", "MATRIX_TOKEN"])
)
auth.add_argument(
"-p",
"--matrix-pw",
help="matrix password. Either this or token required. Environment variable: `MATRIX_PW`",
help="matrix password. Either this or token required. "
"Environment variable: `MATRIX_PW`",
**({"default": os.environ["MATRIX_PW"]} if "MATRIX_PW" in os.environ else {}),
)
parser.add_argument(
auth.add_argument(
"-t",
"--matrix-token",
help="matrix access token. Either this or password required. Environment variable: `MATRIX_TOKEN`",
help="matrix access token. Either this or password required. "
"Environment variable: `MATRIX_TOKEN`",
**({"default": os.environ["MATRIX_TOKEN"]} if "MATRIX_TOKEN" in os.environ else {}),
)
parser.add_argument(
@ -61,10 +66,6 @@ parser.add_argument(
args = parser.parse_args()
if not (args.matrix_pw or args.matrix_token):
print("Error: Either MATRIX_PW or MATRIX_TOKEN needs to be provided")
exit(1)
SERVER_ADDRESS = (args.host, args.port)
MATRIX_URL = args.matrix_url
MATRIX_ID = args.matrix_id