Size: a a a

GraphQL — русскоговорящее сообщество

2018 June 26

M

Maksim in GraphQL — русскоговорящее сообщество
спасибо, посмотрю обязательно
источник

M

Maksim in GraphQL — русскоговорящее сообщество
Maksim
и еще одно, в джс dotenv вызывается так - require('dotenv').config(), но как его вызвать для prisma.yml?
в примере было так:

endpoint: ${env:PRISMA_ENDPOINT}
datamodel: datamodel.graphql
secret: ${env:PRISMA_SECRET}
источник

s

sho? in GraphQL — русскоговорящее сообщество
Maksim
и еще одно, в джс dotenv вызывается так - require('dotenv').config(), но как его вызвать для prisma.yml?
а зачем его для призмы вызывать? ты реквайришь дотенв в самом начале исполнения твоего сервера. Где-то вверху своего app.js. И всё.
источник

s

sho? in GraphQL — русскоговорящее сообщество
главное как можно выше и раньше, чтобы переменные окружения заинджектились до того как подключатся все модули
источник

M

Maksim in GraphQL — русскоговорящее сообщество
sho?
а зачем его для призмы вызывать? ты реквайришь дотенв в самом начале исполнения твоего сервера. Где-то вверху своего app.js. И всё.
ну типа в одном месте указал и все
источник

s

sho? in GraphQL — русскоговорящее сообщество
вот это одно место - самый верх, самое начало твоего сервера
источник

s

sho? in GraphQL — русскоговорящее сообщество
достаточно это сделать один раз и потом все переменные из .env файла будут доступны везде
источник

s

sho? in GraphQL — русскоговорящее сообщество
главное только не коммить .env файл в репо
источник

s

sho? in GraphQL — русскоговорящее сообщество
а храни его прямо на своем энвайрменте
источник

M

Maksim in GraphQL — русскоговорящее сообщество
sho?
главное только не коммить .env файл в репо
не коммичу, но вот призму я коммичу
источник

M

Maksim in GraphQL — русскоговорящее сообщество
поэтому хочу чтобы и в призме тянулось из .env, а не было вставлено руками
источник

s

sho? in GraphQL — русскоговорящее сообщество
ну и правильно
в том окружении где ты будешь разворачивать приложение уже должен быть свой .env файл
источник

s

sho? in GraphQL — русскоговорящее сообщество
или, если ты например в контейнере его будешь запускать - заинджектить эти переменные сразу в окружение
источник

s

sho? in GraphQL — русскоговорящее сообщество
ну то есть банально в докер-компоуз описать что надо
источник

s

sho? in GraphQL — русскоговорящее сообщество
в общем, файл .env  должен быть привязан к окружению, свой для локального дев сервера, свой для стейджжинга, свой для прода,
источник

s

sho? in GraphQL — русскоговорящее сообщество
или же, если у тебя есть другой способ определения переменных окружения на этих серверах - используй их и всё
источник

M

Maksim in GraphQL — русскоговорящее сообщество
sho?
в общем, файл .env  должен быть привязан к окружению, свой для локального дев сервера, свой для стейджжинга, свой для прода,
я не совсем понимаю зачем так много, почему нельзя юзать один?
источник

s

sho? in GraphQL — русскоговорящее сообщество
потому что у тебя на каждом из серверов будут свои переменные. Например разные адреса БД
источник

s

sho? in GraphQL — русскоговорящее сообщество
ты ж для прода и для стейджинга явно две разные бд будешь юзать
источник

s

sho? in GraphQL — русскоговорящее сообщество
вот всю инфу про бд (хост, порт, пароль, юзер, и т.п.) надо записывать в переменные окружения.

Это как конфиг файл привязанный к конкретному серверу на котором ты разворачиваешь свое приложение.
источник