2016-10-13 2 views
0

Я пытаюсь получить доступ к переменной Enviroment в НОМ сценарии так:Как получить переменную среды в сценарии npm?

"scripts": { 
    "test": "istanbul cover node_modules/.bin/_mocha --root ../SERVER/routes -- --recursive" 
}, 

И начать этот скрипт так:

SERVER=somewhere npm test 

Как я могу получить разрешенное значение SERVER переменных в скрипт npm в самом пакете.json?

+0

Зачем вам это нужно? – havenchyk

+0

@havenchyk Потому что я пытаюсь автоматизировать этот тест в TeamCity, поэтому я передаю «SERVER» в качестве переменной окружения –

+0

package.json - это просто файл json, вы не можете получить его там afaik, но вы может получить эту переменную в вашем скрипте с 'process.env' – havenchyk

ответ

-1

Будет ли работать с $SERVER?

"scripts": { "test": "istanbul cover node_modules/.bin/_mocha --root ../$SERVER/routes -- --recursive" }

+0

Это не работает кросс-платформенный (то есть на Windooze). –

0

Было бы лучше использовать env и получить значение внутри скрипта с process.env вместо этого. Это широко применяемая практика.

package.json - это всего лишь файл json, он даже не позволяет оставлять комментарии, поэтому я бы не предложил использовать этот подход.

+1

Также широко используется практика, чтобы все было в ваших сценариях npm. Является ли этот подход действительно лучшим решением во всех случаях использования, является спорным. Однако это не был исходный вопрос, и поэтому предлагая использовать другой подход, на самом деле не решает проблему. –

Смежные вопросы