Skip to content

loliallen/eco-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

193 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EcoHub

Бэкэнд для приложения EcoHub. Используется база данных mongo.

Локальный запуск

  1. Развернуть mongo локально:
    docker-compose -f deployment/local/docker-compose.yaml up -d
  2. Запуск апи пользователя:
    python run.py user
    Для корректной работы отправки писем по почте нужно вписать корректный почтовый адрес и пароль в перемнные среды (см. deploy/.env.example). Можно запросить у команды разработки.
  3. Запуск апи админа:
    python run.py admin
  4. Загрузить фикстуры:
    mongorestore --db eco ./src/fixtures/simple/  

Тестирование

  1. Установить зависимости для тестов
    pip install -r requremets-test.txt
  2. Перед запуском тестов необходимо развернуть локально монгу (из шага Локальный запуск).
  3. Запуск тестов
    export PYTHONPATH=$(pwd)
    cd src/tests/
    pytest

Деплой

Имеется три апи:

  1. eco_api - основное пользовательское апи. Используется на проде. Поднимается на 5000 порту.
  2. eco_api_stage - пользовательское апи. Используется для демонстрации нового функционала, который может сломать обратную совместимость. Поднимается на 7000 порту.
  3. eco_api_admin - админское апи. Используется на проде. Поднимается на 8000 порту.

Развернуть на сервере

Для развертывания понадобятся консольные команды docker и docker-compose.

  1. Создать в папке deployment .env файл (скопировать .env.exmaple)
  2. В корнь проекта скопировать сертификаты или создать с помощь команды:
    openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out certificate.pem
  3. Собрать образ:
    cd deployment
    [sudo] docker-compose build
  4. Запутстить:
    [sudo] docker-compose up -d
  5. Проверить, что все работает:
    [sudo] docker ps

Перевод

Сканировать все места, нуждающиеся в переводе:

pybabel extract -F src/translations/babel.cfg -k lazy_gettext -o src/translations/messages.pot src

Создать переводы:

pybabel update -i src/translations/messages.pot -d src/translations

-- На этом шаге в файл messages.po добавляем переводы

Скомплировать перевод:

pybabel compile -f -d src/translations

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages