как получить доступ к переменным env gatsby в netlify-lambda

Я хотел бы использовать разные учетные данные в моих функциях Netlify в зависимости от моей переменной NODE_ENV. У меня есть проект Gatsby, и когда я запускаю netlify dev, Гэтсби устанавливает NODE_ENV === development, а команда gatsby develop устанавливает его в production.

Взгляните на файл Auth.js https://github.com/iamskok/gatsby-dev-blog-starter/tree/feature/github-comments/.netlify/functions

Функции Netlify должны использовать те же переменные ENV, что и Gatsby.


person iamskok    schedule 10.06.2019    source источник


Ответы (1)


NODE_ENV сложно использовать, потому что многие веб-инструменты используют его для включения / выключения производственных оптимизаций - его значение стало несколько перегруженным. Возьмем, к примеру, развертывание в Netlify, вы всегда хотите видеть оптимизированную сборку продукта, даже при развертывании в среде разработки, не связанной с продуктом, поэтому NODE_ENV всегда должен быть там «production».

Так что, возможно, ответ состоит в том, чтобы настроить новый env var APP_ENV (или что-то еще), которое вы можете свободно изменять в Netlify / Gatsby, чтобы правильно указывать текущий env (dev vs. staging vs. prod), и оставить NODE_ENV для инструментов, чтобы управлять собой.

Они немного говорят об этом в документации Гэтсби здесь:

https://www.gatsbyjs.org/docs/environment-variables/#additional-environments-staging-test-etc

person Jed Richards    schedule 10.06.2019