What's the proper way of setting environment variables in netlify? I would like to be able to set different values for the variables depending on the environment.
Pseudo code:
let host;
if (process.env.GATSBY_CUSTOM_CONTEXT === 'production') {
host = process.env.PRODUCTION_HOST
} else if (process.env.GATSBY_CUSTOM_CONTEXT === 'development') {
host = process.env.DEVELOPMENT_HOST
}
I have tried passing env variable thru CLI, like GATSBY_CUSTOM_CONTEXT=production gatsby build and I also tried using same command with cross-env.
My other attempt used netlify.toml:
[build]
base = "/"
publish = "public"
command = "yarn build"
functions = "src/functions"
[context.production]
[context.production.environment]
GATSBY_CUSTOM_CONTEXT = "production"
All of these options worked with netlify dev locally, but in production GATSBY_CUSTOM_CONTEXT is always undefined.
P.S.
Not sure if I used the right repo to post this question. Feel free to tell me if this issue has to be moved some other place. I have also asked this question in netlify/ask-netlify#59 bc I would like to see a more in-depth tutorial.
What's the proper way of setting environment variables in netlify? I would like to be able to set different values for the variables depending on the environment.
Pseudo code:
I have tried passing env variable thru CLI, like
GATSBY_CUSTOM_CONTEXT=production gatsby buildand I also tried using same command withcross-env.My other attempt used
netlify.toml:All of these options worked with
netlify devlocally, but in productionGATSBY_CUSTOM_CONTEXTis alwaysundefined.P.S.
Not sure if I used the right repo to post this question. Feel free to tell me if this issue has to be moved some other place. I have also asked this question in netlify/ask-netlify#59 bc I would like to see a more in-depth tutorial.