Переменные окружения в Sails.js

16.04.2015

В Sails.js ужасный подход к работе с переменными окружения.

Конечно в sails есть config/local.js и config/env, но их не достаточно для работы с переменными окружения.

Если вам нужно место, где можно хранить все конфигурационные переменные независимо от того какое окружение мы используем, воспользуйтесь модулем - dotenv. Он будет работать с файлом .env в корневом каталоге проекта.

Устанавливаем dotenv:

$ npm install dotenv --save

Подключаем dotenv в app.js и загружаем .env файл:

require('dotenv').load();

Создаем .env и пишем в него наши переменные:

CLIENT_ID=sf8fwe5f6fw4e8fw4ef894
CLIENT_SECRET=123456789

Получить доступ к нашим переменным можно так:

console.log(process.env.CLIENT_ID);
console.log(process.env.CLIENT_SECRET);

Не забудьте добавить .env в .gitignore и запускать наш проект на sails нужно через:

$ node app.js