From 3c091b846d659700f819ccaf18bfb0f1b03aa11c Mon Sep 17 00:00:00 2001 From: Yariv Menachem Date: Sun, 5 Jan 2025 11:16:24 +0200 Subject: [PATCH 1/3] fixed for env --- src/config/settings.py | 2 +- src/main.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/config/settings.py b/src/config/settings.py index 8d1b38d..fb0b1c6 100644 --- a/src/config/settings.py +++ b/src/config/settings.py @@ -12,7 +12,7 @@ if not os.path.exists(dotenv_file): class Settings(BaseSettings): - environment: str + env: str telegram_api_token: str mongo_uri: str mongo_db_name: str diff --git a/src/main.py b/src/main.py index 200c277..a6263c8 100644 --- a/src/main.py +++ b/src/main.py @@ -3,13 +3,14 @@ import os from telegram import Update from telegram.ext import Application, CommandHandler, CallbackQueryHandler, Updater +from config.settings import settings from jobspy.scrapers.site import Site from jobspy.scrapers.utils import create_logger from telegram_handler import TelegramDefaultHandler from telegram_handler.button_callback.telegram_callback_handler import TelegramCallHandler logger = create_logger("Main") -_api_token = os.getenv("TELEGRAM_API_TOKEN") +_api_token = settings.telegram_api_token application = Application.builder().token(_api_token).build() title_filters: list[str] = ["test", "qa", "Lead", "Full-Stack", "Full Stack", "Fullstack", "Frontend", "Front-end", "Front End", "DevOps", "Physical", "Staff", From 8657f7cacf73c8cf4d46cb2941ea8885f5223195 Mon Sep 17 00:00:00 2001 From: Yariv Menachem Date: Fri, 3 Jan 2025 18:48:54 +0200 Subject: [PATCH 2/3] fixed env --- src/config/settings.py | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/src/config/settings.py b/src/config/settings.py index fb0b1c6..c17dbdd 100644 --- a/src/config/settings.py +++ b/src/config/settings.py @@ -1,25 +1,16 @@ import os -from pydantic_settings import BaseSettings, SettingsConfigDict +from pydantic import Field +from pydantic_settings import BaseSettings -if not os.getenv("ENV"): +if not os.environ.get("ENV"): raise ValueError("Invalid environment. Set the 'ENV' variable (e.g., export ENV=dev).") -dotenv_file = os.path.join(os.path.dirname(__file__), ".env." + os.environ.get("ENV")) - -if not os.path.exists(dotenv_file): - raise FileNotFoundError(f"Environment file not found: {dotenv_file}") - class Settings(BaseSettings): - env: str - telegram_api_token: str - mongo_uri: str - mongo_db_name: str - print(f"Loading environment from: {dotenv_file}") - model_config = SettingsConfigDict( - env_file=dotenv_file - ) + telegram_api_token: str = Field(alias="telegram_api_token") + mongo_uri: str = Field(alias="mongo_uri") + mongo_db_name: str = Field(alias="mongo_db_name") settings = Settings() From e6cb23cfe2bdd51d717b1e6f8d7f8b3c294c37bd Mon Sep 17 00:00:00 2001 From: Yariv Menachem Date: Sun, 5 Jan 2025 21:16:57 +0200 Subject: [PATCH 3/3] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 65a9df4..7164ca1 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ JobPost 4. **Run the bot**: ```bash - python bot.py + python src/main.py ``` ## Usage