Skip to content

Latest commit

 

History

History
91 lines (82 loc) · 5.47 KB

config.ru.md

File metadata and controls

91 lines (82 loc) · 5.47 KB

Руководство по конфигурированию приложения

Для конфигурирования данного приложения используется модуль nconf

Файлы конфигурации находятся в папке configs и распределены по 4 папкам:

  • common - файлы общие для всех видов окружений
  • dev - специальные настройки для dev окружения
  • testing - специальные настройки для testing окружения
  • production - специальные настройки для production окружения

При этом параметры настроек для dev, testing или production окружений имеют приоритет над соответствующими параметрами общих настроек common

Детальное описание настроек приложения

common/common.json

{
    "languages": ["en", "ru"],
    "defaultLanguage": "ru",
    "port": 8080,
    "title": {
        "en": "Your application title",
        "ru": "Название приложения"
    },
    "update": {
        "enable": true,
        "cron": "0 */1 * * * *"
    },
    "logger": {
        "level": "debug",
        "stdout": "logs/output.log",
        "stderr": "logs/errors.log"
    },
    "statics": {
        "www": "/www",
        "pathname": "/src"
    },
    "yandexApi": {
        "login": "",
        "password": ""
    },
    "model": {
        "dir": "backups"
    },
    "github": {
        "libraries": {
            "type": "public",
            "user": "bem",
            "repo": "bem-info-libs",
            "ref": "master",
            "pattern": "https://raw.githubusercontent.com/%s/%s/%s%s"
        },
        "public": {
            "host": "api.github.com",
            "auth": ""
        },
        "people": "https://github.com/bem/bem-site-engine/blob/dev/docs/people/people.json"
    },
    "hosts": {
        "en": "",
        "ru": ""
    }
}
  • languages - массив со строками, обозначающими локализации, присутствующие на сайте.
  • defaultLanguage - язык сайта по умолчанию.
  • port - порт или путь к socket - файлу на котором будет запущен сервер.
  • title - объект с ключами совпадающими с именами локалей для сайта и значениями. которые будут представлены в качестве title страниц сайта.
  • update - объект с настройками модуля проверки обновления данных. Необходим для запуска сайта в тестовом или боевом окружениях.
  • logger - объект с настроками путей для хранения файлов логов и уровня логгирования сайта. Доступные значения уровня логгирования verbose, debug, info, warn, error.
  • statics - объект в котором указывается путь к статическим файлам, необходимым при работе сайта.
  • yandexApi - объект с полями login и password. Необходим для доступа к Yandex Disk, в случае когда сайт запускается в тестовом или боевом окружениях.
  • model - объект с полями, обозначающими названия файлов в которые сохраняются модель сайта, данные поиска и.т.д.
  • github:libraries - объект с полями, указывающими на ветку репозитория в котором хранятся собранные данные для библиотек блоков.
  • github:public - объект с параметрами, необходимыми для работы github API по которому загружается документация в процессе сборки данных для сайта.
  • github:people - строка url браузере на страницу github с json файлом в котором хранится информация об авторах и переводчиках, например https://github.com/bem/bem-site-engine/blob/dev/docs/people/people.json
  • hosts - объект с ключами совпадающими с именами локалей для сайта и значениями в качестве которых должны быть представлены названия хостов сайта для соответствующих локалей. Данная настройка необходима для автоматического построения файла sitemap.xml в процесе сборки данных для сайта.

Переключение конфигураций осуществляется путем создания симлинка current на одну из папок соответсвующих конфигурации определенного окружения configs/dev, configs/testing, configs/production