bem-archive / bem-site-engine

BEM CMS based on Express framework.
25 stars 8 forks source link

Не работает установка, сборка данных и запуск приложения #50

Closed nitrok closed 10 years ago

nitrok commented 10 years ago

По инструкции вытянул код, но на следующем шаге появляется ошибка Error! Bundle node.js file is not exist yet

vagrant@vagrant-ubuntu-trusty-32:/vagrant/bem-site-engine$ npm run make

> bem-site-engine@1.0.0 make /vagrant/bem-site-engine
> npm install && node postinstall.js && node bin/data.js && npm start

npm WARN package.json vow@0.4.5 No README data
--- application install ---
directory logs already exists
directory backups already exists
directory cache already exists
directory cache/branch already exists
directory cache/tag already exists
execute command ln -snf dev current
command completed set config
execute command bower-npm-install --non-interactive
command completed bower-npm-install
execute command YENV=development enb make --no-cache
command enb make failed with error Error: YENV=development enb make --no-cache failed: 17:00:08.076
- build started
17:00:08.101 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.bemjson.js] file-provider
17:00:08.101 - [rebuild] [src/bundles/errors.bundles/error-500/error-500.bemjson.js] file-provider
17:00:08.107 - [rebuild] [src/bundles/desktop.bundles/common/common.bemdecl.js] file-provider
17:00:09.744 - [rebuild] [src/bundles/desktop.bundles/common/common.levels] levels
17:00:09.744 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.levels] levels
17:00:09.744 - [rebuild] [src/bundles/errors.bundles/error-500/error-500.levels] levels
17:00:09.772 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.bemdecl.js] bemdecl-from-be
mjson
17:00:09.781 - [rebuild] [src/bundles/errors.bundles/error-500/error-500.bemdecl.js] bemdecl-from-be
mjson
17:00:10.138 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.deps.js] deps
17:00:10.140 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.files] files
17:00:10.140 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.dirs] files
17:00:13.550 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.ie.css] css-stylus
17:00:13.554 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.keysets.all.js] i18n-merge-
keysets
17:00:13.557 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.noprefix.css] css-stylus
17:00:13.559 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.keysets.ru.js] i18n-merge-k
eysets
17:00:13.562 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.keysets.en.js] i18n-merge-k
eysets
17:00:13.831 - [failed] [src/bundles/errors.bundles/error-404/error-404.bemhtml.js] bemhtml-old
17:00:13.834 - [failed] [src/bundles/errors.bundles/error-404/error-404.ru.html] html-from-bemjson-i
18n
17:00:13.834 - [failed] [src/bundles/errors.bundles/error-404/error-404.en.html] html-from-bemjson-i
18n
17:00:14.811 - build failed
17:00:15.122 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.min.ie.css] file-copy
17:00:15.132 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.lang.all.js] i18n-lang-js
17:00:15.140 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.lang.en.js] i18n-lang-js
17:00:15.155 - [rebuild] [src/bundles/errors.bundles/error-404/error-404.lang.ru.js] i18n-lang-js
Error: spawn ENOMEM
    at errnoException (child_process.js:988:11)
    at ChildProcess.spawn (child_process.js:935:11)
    at exports.spawn (child_process.js:723:9)
    at Object.exports.fork (child_process.js:533:10)
    at module.exports.inherit.start (/vagrant/bem-site-engine/node_modules/enb-bemxjst/node_modules/
sibling/lib/worker.js:19:38)
    at fork (/vagrant/bem-site-engine/node_modules/enb-bemxjst/node_modules/sibling/lib/sibling.js:2
1:16)
    at module.exports.require.create.name.target.methods._bemxjstProcess (/vagrant/bem-site-engine/n
ode_modules/enb-bemxjst/techs/bem-xjst.js:34:53)
    at null.<anonymous> (/vagrant/bem-site-engine/node_modules/enb-bemxjst/techs/bem-xjst.js:30:33)
    at Array.0 (/vagrant/bem-site-engine/node_modules/enb-bemxjst/node_modules/vow/lib/vow.js:555:39
)
    at Object.callFns [as _onImmediate] (/vagrant/bem-site-engine/node_modules/enb-bemxjst/node_modu
les/vow/lib/vow.js:1148:35)

> bem-site-engine@1.0.0 start /vagrant/bem-site-engine
> node bin/app.js

Error! Bundle node.js file is not exist yet
You must compile bundles before launch application
tadatuta commented 10 years ago

Error: spawn ENOMEM означает, что для виртуалки выделено недостаточно памяти для сборки проекта

nitrok commented 10 years ago

Сделал новую виртуалку на основе ubuntu/trusty64 и 1024 мегабайта памяти. Ошибка с памятью ушла, но собрать все равно не получилось. Система чистая, установлены только nodejs и nodejs-legacy

vagrant@bem:/vagrant/bem-site-engine$ npm run make

> bem-site-engine@1.0.0 make /vagrant/bem-site-engine
> npm install && node postinstall.js && node bin/data.js && npm start

npm WARN package.json vow@0.4.5 No README data
--- application install ---
directory logs already exists
directory backups already exists
directory cache already exists
directory cache/branch already exists
directory cache/tag already exists
execute command ln -snf dev current
command set config failed with error Error: ln -snf dev current failed: ln: failed to create symboli
c link ‘current/dev’: Protocol error

> bem-site-engine@1.0.0 start /vagrant/bem-site-engine
> node bin/app.js

Error! Bundle node.js file is not exist yet
You must compile bundles before launch application
vagrant@bem:/vagrant/bem-site-engine$
tadatuta commented 10 years ago

Здесь проблема в том, что хостовая файловая система не поддерживает симлинки. можно побороть так:

  1. скопировать configs/dev в configs/current
  2. скопировать configs/current/borschik в корень под именем .borschik (именно с точкой в начале файла

После этого можно будет закомментировать вот эту часть postinstall.js.

Правда есть вероятность, что симлинки используются где-то еще. Мы попробуем придумать какое-то комплексное решение, но пока не возьмусь назвать сроки.

tadatuta commented 10 years ago

Если верить интернетам, то windows научилась поддерживать симлинки, но только из админского аккаунта. А здесь пишут, что можно разрешить создание симлинок для обычных учетных записей.

У меня не на чем попробовать, поэтому буду очень признателен за отзыв — помогает ли такая схема.

tadatuta commented 10 years ago
nitrok commented 10 years ago

Владимир, спасибо за помощь. У меня не сработал ни один из описанных вариантов. Обошел через вирутальную osx.

nitrok commented 10 years ago

Аккуратнее проделал все что предлагается по ссылкам и создане ссылок заработало. Спасибо!