Использую BEM для генерации страничек, которые ходят в java-сервер за данными. Тестирую с помощью 'bem server'.
Собственно вопрос, могу ли я что-то сказать в командной строке, чтобы весь необходимый контент сгенерировался в указанную мной директорию, которую я положу за ngnix/Apache и у меня все будет работать?
Есть в bem-tools такое волшебное заклинание?
@g0t0-end скорее всего правильный ответ: использовать
grunt
,gulp
илиnpm таски
, т.к. bem-tools не предназначен для такого рода задач.Как вариант, можно попробовать сборщик ENB и использовать его технологию
file-copy
Печально. Будем пробовать-смотреть.
@g0t0-end, есть ли какая-то причина не сказать ngnix/Apache, что root — это как раз получившаяся директория? Точно ли нужно что-то двигать?
См., допустим, древний пост с примером конфига.
@tadatuta, не хочется тащить весь проект на сервак. Наверное это глупый перфекционизм, но я так привык. В идеале: билдсервер мне должен отдавать архив, который я могу распаковать в корень сервера и быть счастлив.
@g0t0-end обычно фраза «тащить на сервер» предполагает некий деплой-скрипт, в котором можно сказать что-то вроде
@tadatuta, вместо того, чтобы придумывать верные маски для $ cp desktop.bundles//__.* dist/ $ cp desktop.bundles//_.html dist/ хочется сказать $ bem make --path path/to/dist и радоваться жизни.
К тому же я еще до конца хорошо не понимаю, какие именно из файлов, находящихся в директориях, являются необходимыми для работы сайта, а какие - просто промежуточный этап генерации ))
@g0t0-end Вот в том-то и дело ;) Если собирается статика из html + css + js — это одно, если при этом нужна локализация и для каждого языка собираются разные html + js — другое, если требуются еще шаблоны — третье, а если сайт динамический, то там вообще куча вариантов получается. Поэтому ожидается, что разработчик понимает, чего он хочет и деплоит именно нужно. Угадать за разработчика не получится в любом случае. Даже если добавлять
bem make --path path/to/dist
, ему в любом случае где-то потребуется явно сказать, что он считает полезными файлами, а что — промежуточный кэш сборки.@tadatuta
Раз уж зашел об этом разговор... А в BEM есть какие-то готовые вещи для локализации web-приложения? Что-нибудь подобное android's values-ru/values-en?
@g0t0-end Есть старая реализация
i18n
вbem-bl
(включает возможность локализовать все технологии (BEMJSON, JS, шаблоны, тесты и т.д.) и большое желание ее переосмыслить в ближайшее время.