Использование переменных среды Gatsby + Netlify требует небольшого изменения этих переменных. Вам нужно добавить префикс GATSBY
во все ваши переменные. Как показывает этот поток сообщества Netlify , а также документация Gatsby :
Обратите внимание, что вы не должны передавать файлы .env. * В систему контроля версий и лучше использовать параметры, предоставленные вашим поставщиком непрерывного развертывания (CD). Примером является Netlify с переменными среды сборки. Примечание: поскольку Gatsby использует Webpack DefinePlugin, чтобы сделать переменные среды доступными во время выполнения, их нельзя деструктурировать из process.env; вместо этого на них должна быть полная ссылка.
GATSBY_API_URL
будет доступен для вашего сайта (на стороне клиента и на стороне сервера) как process.env.GATSBY_API_URL
.:
Конечно это относится только к стороне Netlify, а не к вашему локальному компьютеру, но рекомендуется использовать одинаковые имена с обеих сторон. Поэтому вам необходимо изменить переменные Contentful.
CONTENTFUL_ACCESS_TOKEN
на GATSBY_CONTENTFUL_ACCESS_TOKEN
и CONTENTFUL_SPACE_ID
на GATSBY_CONTENTFUL_SPACE_ID
(более того, у вас gatsby-config.js
или везде, где вы их используете).
Следующим (и последним) шагом является добавление этих переменных в вашу панель Netlify, как показано на следующем снимке экрана:
Предыдущая конфигурация находится в разделе Развертывание> Настройки развертывания
Как только вы это сделаете, ваша передняя сторона сможет найти ваши переменные Contentful. Возможно, вам придется удалить кэш сборки Netlify.