nconf не загружается из файла на heroku


Я переключился с использования dotcloud на heroku. Я использую nconf для своей конфигурации. У меня есть настройка, что он сначала захватывает из переменных окружения,а если нет, то он захватывает из конфигурации.файл json. На localhost это работает нормально. Для моего номера сборки я сохраняю его в файле конфигурации, а не в переменной окружения, так что я могу установить его на push, а затем не нужно менять среду.

Приложение.кофе

nconf.argv().env().file file: "./config.json"

Конфигурация.json

{
    "APP_BUILD_NUMBER": "1.0.0"
}

Если я выполняю это локально или на dotcloud, nconf правильно передает 1.0.0, если я делаю

nconf.get("APP_BUILD_NUMBER")
Но на хероку он возвращается неопределенным. Если я установлю его в переменных окружения, то он действительно работает. Мне интересно, что я делаю не так.
2   3   2014-03-15 23:54:07

2 ответа:

Попробуйте удалить './ 'часть пути:

nconf.argv().env().file file: "config.json"

Если это не сработает, попробуйте

nconf.argv().env().file file: __dirname + "/config.json"

Я бы рекомендовал запустить heroku run bash , затем войти в узел REPL и попробовать несколько путей, пока вы не поймете, что отличается. Внесение изменений, а затем ожидание толчка-слишком утомительный цикл отладки. Я подозреваю, что ваша проблема находится вокруг пути, или, возможно, не сбросить переменную окружения.