env-cmd
env-cmd copied to clipboard
Variables are undefined when build in production with Vitejs
I'm currently using Vuejs with Vitejs, but when I'm running the build in production, the variables are undefined. Vitejs it's like ReactCreateApp, using the REACT_APP_ prefix, but instead we need to use VITE_ prefix, and even when applying this still doesn't work.
.env-cmdrc.js
module.exports = {
"development": {
"VITE_APP_DB_ENV": "development",
"VITE_APP_BUILD_ENV": "development",
"VITE_HASURA_ENGINE_URL": "URL"
...
},
"staging": {
"VITE_APP_DB_ENV": "staging",
"VITE_APP_BUILD_ENV": "production",
"VITE_HASURA_ENGINE_URL": "URL"
...
},
"production": {
"VITE_APP_DB_ENV": "production",
"VITE_APP_BUILD_ENV": "production",
"VITE_HASURA_ENGINE_URL": "URL"
...
}
}
package.json:
"scripts": {
"start": "env-cmd -e ${APP_ENV:=production} npm run gql:generate && vite build",
}
@jdinartejesus did you try to pass just the production
for the -e
? or switch with places the npm run gql:generate
with vite build
?
I've worked today with the env-cmd
and vitejs and did not have any problems. Here is a simple example using both tools
Edit: seems like the env-cmd
is setting the env variables for the first command, to run multiple commands see this docs