From 59d819fdc151cdd54d27e660a3e04ed68851beb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9A=D0=BE=D0=BA=D0=BE=D1=81=20=D0=90=D1=80=D1=82=D0=B5?= =?UTF-8?q?=D0=BC=20=D0=9D=D0=B8=D0=BA=D0=BE=D0=BB=D0=B0=D0=B5=D0=B2=D0=B8?= =?UTF-8?q?=D1=87?= Date: Tue, 20 Jan 2026 12:49:25 +0700 Subject: [PATCH] Customizable date range --- redmine_reporter/cli.py | 5 +++-- redmine_reporter/config.py | 10 +++++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/redmine_reporter/cli.py b/redmine_reporter/cli.py index 0f749ea..7166db4 100644 --- a/redmine_reporter/cli.py +++ b/redmine_reporter/cli.py @@ -23,8 +23,9 @@ def main(argv: Optional[List[str]] = None) -> int: ) parser.add_argument( "--date", - default=Config.DEFAULT_DATE_RANGE, - help="Date range in format YYYY-MM-DD--YYYY-MM-DD (default: %(default)s)" + default=Config.get_default_date_range(), + # help="Date range in format YYYY-MM-DD--YYYY-MM-DD (default: %(default)s)" + help="Date range in format YYYY-MM-DD--YYYY-MM-DD (default from .env or %(default)s)" ) parser.add_argument( "--compact", diff --git a/redmine_reporter/config.py b/redmine_reporter/config.py index 9e2f9b3..b943837 100644 --- a/redmine_reporter/config.py +++ b/redmine_reporter/config.py @@ -9,7 +9,15 @@ class Config: REDMINE_URL = os.getenv("REDMINE_URL", "").rstrip("/") REDMINE_USER = os.getenv("REDMINE_USER") REDMINE_PASSWORD = os.getenv("REDMINE_PASSWORD") - DEFAULT_DATE_RANGE = "2025-12-19--2026-01-31" + DEFAULT_FROM_DATE = os.getenv("DEFAULT_FROM_DATE") + DEFAULT_TO_DATE = os.getenv("DEFAULT_TO_DATE") + + @classmethod + def get_default_date_range(cls) -> str: + if cls.DEFAULT_FROM_DATE and cls.DEFAULT_TO_DATE: + return f"{cls.DEFAULT_FROM_DATE}--{cls.DEFAULT_TO_DATE}" + # fallback hardcoded + return "2025-12-19--2026-01-31" @classmethod def validate(cls) -> None: