Skip to content

alexpro2022/Tasks_TG_bot

Repository files navigation

Tasks_TG_bot

CI/CD codecov


Оглавление


Технологии

Подробнее

Python aiogram Pydantic PostgreSQL asyncpg SQLAlchemy Alembic docker_compose Pytest Pytest-asyncio pytest-cov pre-commit

⬆️Оглавление


Описание работы

Необходимо написать TG Бота, который будет создавать задачи через /add и добавлять их в БД PostgreSQL. Также по команде /tsk он должен выводить список задач из БД.

⬆️Оглавление


Установка приложения:

Предварительные условия

Предполагается, что пользователь:

  • создал бота.
  • установил Docker и Docker Compose на локальной машине. Проверить наличие можно выполнив команды:
docker --version && docker-compose --version


Клонируйте репозиторий с GitHub и введите данные для переменных окружения (значения даны для примера, но их можно оставить, необходимо ввести только значение токена вашего бота):

git clone https://github.com/alexpro2022/Tasks_TG_bot.git
cd Tasks_TG_bot
cp .env_example .env
nano .env

⬆️Оглавление


Запуск тестов:

Из корневой директории проекта выполните команду запуска тестов:

docker compose -f docker/test/docker-compose.yml --env-file .env up --build --abort-on-container-exit && \
docker compose -f docker/test/docker-compose.yml --env-file .env down -v

После прохождения тестов в консоль будет выведен отчет pytest и coverage.

⬆️Оглавление


Запуск приложения:

  1. Из корневой директории проекта выполните команду:
docker compose -f docker/dev/docker-compose.yml --env-file .env up -d --build
  1. Остановить docker и удалить контейнеры можно командой из корневой директории проекта:
docker compose -f docker/dev/docker-compose.yml --env-file .env down

Если также необходимо удалить том базы данных:

docker compose -f docker/dev/docker-compose.yml --env-file .env down -v && docker system prune -f

⬆️Оглавление


Удаление приложения:

Из корневой директории проекта выполните команду:

cd .. && rm -fr Tasks_TG_bot

⬆️Оглавление


Автор:

Aleksei Proskuriakov

⬆️В начало