add .env file in project and add use #4

Merged
Dmitrium12 merged 1 commits from add-dot-env-file into master 2024-06-09 20:22:01 +07:00
6 changed files with 80 additions and 3 deletions
Showing only changes of commit 31ead00d17 - Show all commits
+6 -1
View File
@@ -1,3 +1,5 @@
import os
from pymongo import MongoClient from pymongo import MongoClient
@@ -8,7 +10,10 @@ class UseDB:
def __init__(self, collection_name): def __init__(self, collection_name):
self.series_collection = None self.series_collection = None
self.client = MongoClient('mongodb', 27017) if os.getenv('ENV') == 'production':
self.client = MongoClient('mongodb', 27017)
else:
self.client = MongoClient('localhost', 27017)
self.db = self.client['aero'] self.db = self.client['aero']
self.series_collection = self.db[collection_name] self.series_collection = self.db[collection_name]
+3
View File
@@ -18,6 +18,9 @@ db_timetable - это удобное решение для студентов и
- pymongo - pymongo
# Для запуска проекта необходимо выполнить следующие шаги: # Для запуска проекта необходимо выполнить следующие шаги:
Основное:
- создайте .env файл
- напишите в нём TOKEN=токен телеграм бота
Для продакшн версии: Для продакшн версии:
```bash ```bash
+1
View File
@@ -11,6 +11,7 @@ services:
- poetry run python /aero/main.py - poetry run python /aero/main.py
environment: environment:
- TZ=Asia/Krasnoyarsk - TZ=Asia/Krasnoyarsk
- ENV=production
mongodb: mongodb:
image: mongo image: mongo
restart: always restart: always
+4 -1
View File
@@ -6,13 +6,16 @@ from aiogram.client.default import DefaultBotProperties
from aiogram.enums import ParseMode from aiogram.enums import ParseMode
from aiogram.filters import Command from aiogram.filters import Command
from aiogram.types import Message from aiogram.types import Message
import environs
from DB import UseDB from DB import UseDB
from additional_functions import (on_notification, set_group, timetable_for_day, from additional_functions import (on_notification, set_group, timetable_for_day,
timetable_day) timetable_day)
from use_database import detect_group_to_update from use_database import detect_group_to_update
TOKEN = "7171391557:AAGickIyKK-kCAWUO4V_5X3m1_6F4Cmgmdw" env = environs.Env()
env.read_env()
TOKEN = env.str('TOKEN')
dp = Dispatcher() dp = Dispatcher()
Generated
+65 -1
View File
@@ -345,6 +345,26 @@ idna = ["idna (>=3.6)"]
trio = ["trio (>=0.23)"] trio = ["trio (>=0.23)"]
wmi = ["wmi (>=1.5.1)"] wmi = ["wmi (>=1.5.1)"]
[[package]]
name = "environs"
version = "11.0.0"
description = "simplified environment variable parsing"
optional = false
python-versions = ">=3.8"
files = [
{file = "environs-11.0.0-py3-none-any.whl", hash = "sha256:e0bcfd41c718c07a7db422f9109e490746450da38793fe4ee197f397b9343435"},
{file = "environs-11.0.0.tar.gz", hash = "sha256:069727a8f73d8ba8d033d3cd95c0da231d44f38f1da773bf076cef168d312ee8"},
]
[package.dependencies]
marshmallow = ">=3.13.0"
python-dotenv = "*"
[package.extras]
dev = ["environs[tests]", "pre-commit (>=3.5,<4.0)", "tox"]
django = ["dj-database-url", "dj-email-url", "django-cache-url"]
tests = ["environs[django]", "pytest"]
[[package]] [[package]]
name = "frozenlist" name = "frozenlist"
version = "1.4.1" version = "1.4.1"
@@ -456,6 +476,25 @@ files = [
[package.extras] [package.extras]
dev = ["black (>=22.8.0,<22.9.0)", "flake8 (>=5.0.4,<5.1.0)", "isort (>=5.11.5,<5.12.0)", "mypy (>=1.4.1,<1.5.0)", "pre-commit (>=2.20.0,<2.21.0)", "pytest (>=7.1.3,<7.2.0)", "pytest-cov (>=3.0.0,<3.1.0)", "pytest-html (>=3.1.1,<3.2.0)", "types-setuptools (>=65.3.0,<65.4.0)"] dev = ["black (>=22.8.0,<22.9.0)", "flake8 (>=5.0.4,<5.1.0)", "isort (>=5.11.5,<5.12.0)", "mypy (>=1.4.1,<1.5.0)", "pre-commit (>=2.20.0,<2.21.0)", "pytest (>=7.1.3,<7.2.0)", "pytest-cov (>=3.0.0,<3.1.0)", "pytest-html (>=3.1.1,<3.2.0)", "types-setuptools (>=65.3.0,<65.4.0)"]
[[package]]
name = "marshmallow"
version = "3.21.3"
description = "A lightweight library for converting complex datatypes to and from native Python datatypes."
optional = false
python-versions = ">=3.8"
files = [
{file = "marshmallow-3.21.3-py3-none-any.whl", hash = "sha256:86ce7fb914aa865001a4b2092c4c2872d13bc347f3d42673272cabfdbad386f1"},
{file = "marshmallow-3.21.3.tar.gz", hash = "sha256:4f57c5e050a54d66361e826f94fba213eb10b67b2fdb02c3e0343ce207ba1662"},
]
[package.dependencies]
packaging = ">=17.0"
[package.extras]
dev = ["marshmallow[tests]", "pre-commit (>=3.5,<4.0)", "tox"]
docs = ["alabaster (==0.7.16)", "autodocsumm (==0.2.12)", "sphinx (==7.3.7)", "sphinx-issues (==4.1.0)", "sphinx-version-warning (==1.1.2)"]
tests = ["pytest", "pytz", "simplejson"]
[[package]] [[package]]
name = "multidict" name = "multidict"
version = "6.0.5" version = "6.0.5"
@@ -555,6 +594,17 @@ files = [
{file = "multidict-6.0.5.tar.gz", hash = "sha256:f7e301075edaf50500f0b341543c41194d8df3ae5caf4702f2095f3ca73dd8da"}, {file = "multidict-6.0.5.tar.gz", hash = "sha256:f7e301075edaf50500f0b341543c41194d8df3ae5caf4702f2095f3ca73dd8da"},
] ]
[[package]]
name = "packaging"
version = "24.0"
description = "Core utilities for Python packages"
optional = false
python-versions = ">=3.7"
files = [
{file = "packaging-24.0-py3-none-any.whl", hash = "sha256:2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"},
{file = "packaging-24.0.tar.gz", hash = "sha256:eb82c5e3e56209074766e6885bb04b8c38a0c015d0a30036ebe7ece34c9989e9"},
]
[[package]] [[package]]
name = "pydantic" name = "pydantic"
version = "2.7.3" version = "2.7.3"
@@ -746,6 +796,20 @@ snappy = ["python-snappy"]
test = ["pytest (>=7)"] test = ["pytest (>=7)"]
zstd = ["zstandard"] zstd = ["zstandard"]
[[package]]
name = "python-dotenv"
version = "1.0.1"
description = "Read key-value pairs from a .env file and set them as environment variables"
optional = false
python-versions = ">=3.8"
files = [
{file = "python-dotenv-1.0.1.tar.gz", hash = "sha256:e324ee90a023d808f1959c46bcbc04446a10ced277783dc6ee09987c37ec10ca"},
{file = "python_dotenv-1.0.1-py3-none-any.whl", hash = "sha256:f7b63ef50f1b690dddf550d03497b66d609393b40b564ed0d674909a68ebf16a"},
]
[package.extras]
cli = ["click (>=5.0)"]
[[package]] [[package]]
name = "requests" name = "requests"
version = "2.32.3" version = "2.32.3"
@@ -912,4 +976,4 @@ multidict = ">=4.0"
[metadata] [metadata]
lock-version = "2.0" lock-version = "2.0"
python-versions = "^3.11" python-versions = "^3.11"
content-hash = "df3df3687ea8fc62297464b5fc70d43f3b40bffcc6b05f57cc5416a844cc246d" content-hash = "d5c0b13d3c9497feef75f74fc3d838fe2dfe1c241e1fd9fcb155b13039b8c861"
+1
View File
@@ -12,6 +12,7 @@ aiogram = "^3.3.0"
requests = "^2.31.0" requests = "^2.31.0"
bs4 = "^0.0.2" bs4 = "^0.0.2"
pymongo = "^4.6.1" pymongo = "^4.6.1"
environs = "^11.0.0"
[build-system] [build-system]