From fd86bdd17c626ab26502661a03bd95e9021ec16f Mon Sep 17 00:00:00 2001 From: Valerii Sorokobatko Date: Mon, 6 Mar 2017 23:24:52 +0200 Subject: [PATCH 1/5] support different env configs. --- packages/react-scripts/config/loadEnv.js | 53 +++++++++++++++++++ packages/react-scripts/config/paths.js | 24 +++++++++ .../react-scripts/fixtures/kitchensink/.env | 4 +- .../fixtures/kitchensink/.env.development | 2 + .../fixtures/kitchensink/.env.local | 2 + .../fixtures/kitchensink/.env.production | 2 + .../kitchensink/integration/env.test.js | 13 +++-- .../src/features/env/FileEnvVariables.js | 7 ++- packages/react-scripts/scripts/build.js | 6 +-- packages/react-scripts/scripts/start.js | 6 +-- packages/react-scripts/scripts/test.js | 6 +-- packages/react-scripts/template/.env | 1 + packages/react-scripts/template/README.md | 15 ++++++ packages/react-scripts/template/gitignore | 7 ++- 14 files changed, 125 insertions(+), 23 deletions(-) create mode 100644 packages/react-scripts/config/loadEnv.js create mode 100644 packages/react-scripts/fixtures/kitchensink/.env.development create mode 100644 packages/react-scripts/fixtures/kitchensink/.env.local create mode 100644 packages/react-scripts/fixtures/kitchensink/.env.production create mode 100644 packages/react-scripts/template/.env diff --git a/packages/react-scripts/config/loadEnv.js b/packages/react-scripts/config/loadEnv.js new file mode 100644 index 00000000000..ff38e86e6d8 --- /dev/null +++ b/packages/react-scripts/config/loadEnv.js @@ -0,0 +1,53 @@ +// @remove-on-eject-begin +/** + * Copyright (c) 2015-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + */ +// @remove-on-eject-end +'use strict'; + +// Load environment variables from .env* files. Suppress warnings using silent +// if this file is missing. dotenv will never modify any environment variables +// that have already been set. +// https://github.com/motdotla/dotenv +// Used .env* files - https://github.com/bkeepers/dotenv#what-other-env-files-can-i-use +var fs = require('fs'); +var paths = require('./paths'); + +var sequence = { + 'development': [ + paths.dotenvDevelopmentLocal, + paths.dotenvDevelopment, + paths.dotenvLocal, + paths.dotenv + ], + 'test': [ + paths.dotenvTestLocal, + paths.dotenvTest, + paths.dotenvLocal, + paths.dotenv + ], + 'production': [ + paths.dotenvProductionLocal, + paths.dotenvProduction, + paths.dotenvLocal, + paths.dotenv + ] +}; + +var envConfigs = sequence[process.env.NODE_ENV]; + +if (envConfigs) { + envConfigs.forEach(envConfig => { + if (fs.existsSync(envConfig)) { + require('dotenv').config({ + silent: true, + path: envConfig + }); + } + }); +} diff --git a/packages/react-scripts/config/paths.js b/packages/react-scripts/config/paths.js index 76397756040..187bce0bb8c 100644 --- a/packages/react-scripts/config/paths.js +++ b/packages/react-scripts/config/paths.js @@ -74,6 +74,14 @@ function getServedPath(appPackageJson) { // config after eject: we're in ./config/ module.exports = { + dotenv: resolveApp('.env'), + dotenvLocal: resolveApp('.env.local'), + dotenvDevelopment: resolveApp('.env.development'), + dotenvDevelopmentLocal: resolveApp('.env.development.local'), + dotenvTest: resolveApp('.env.test'), + dotenvTestLocal: resolveApp('.env.test.local'), + dotenvProduction: resolveApp('.env.production'), + dotenvProductionLocal: resolveApp('.env.production.local'), appBuild: resolveApp('build'), appPublic: resolveApp('public'), appHtml: resolveApp('public/index.html'), @@ -96,6 +104,14 @@ function resolveOwn(relativePath) { // config before eject: we're in ./node_modules/react-scripts/config/ module.exports = { appPath: resolveApp('.'), + dotenv: resolveApp('.env'), + dotenvLocal: resolveApp('.env.local'), + dotenvDevelopment: resolveApp('.env.development'), + dotenvDevelopmentLocal: resolveApp('.env.development.local'), + dotenvTest: resolveApp('.env.test'), + dotenvTestLocal: resolveApp('.env.test.local'), + dotenvProduction: resolveApp('.env.production'), + dotenvProductionLocal: resolveApp('.env.production.local'), appBuild: resolveApp('build'), appPublic: resolveApp('public'), appHtml: resolveApp('public/index.html'), @@ -125,6 +141,14 @@ if ( ) { module.exports = { appPath: resolveApp('.'), + dotenv: resolveOwn('template/.env'), + dotenvLocal: resolveOwn('template/.env.local'), + dotenvDevelopment: resolveOwn('template/.env.development'), + dotenvDevelopmentLocal: resolveOwn('template/.env.development.local'), + dotenvTest: resolveOwn('template/.env.test'), + dotenvTestLocal: resolveOwn('template/.env.test.local'), + dotenvProduction: resolveOwn('template/.env.production'), + dotenvProductionLocal: resolveOwn('template/.env.production.local'), appBuild: resolveOwn('../../build'), appPublic: resolveOwn('template/public'), appHtml: resolveOwn('template/public/index.html'), diff --git a/packages/react-scripts/fixtures/kitchensink/.env b/packages/react-scripts/fixtures/kitchensink/.env index 3e6e8a5a360..3e2f7b14a73 100644 --- a/packages/react-scripts/fixtures/kitchensink/.env +++ b/packages/react-scripts/fixtures/kitchensink/.env @@ -1 +1,3 @@ -REACT_APP_FILE_ENV_MESSAGE=fromtheenvfile +REACT_APP_X = x-from-original-env +REACT_APP_ORIGINAL_1 = from-original-env-1 +REACT_APP_ORIGINAL_2 = from-original-env-2 diff --git a/packages/react-scripts/fixtures/kitchensink/.env.development b/packages/react-scripts/fixtures/kitchensink/.env.development new file mode 100644 index 00000000000..cc10be5e6d8 --- /dev/null +++ b/packages/react-scripts/fixtures/kitchensink/.env.development @@ -0,0 +1,2 @@ +REACT_APP_X = x-from-development-env +REACT_APP_DEVELOPMENT = development diff --git a/packages/react-scripts/fixtures/kitchensink/.env.local b/packages/react-scripts/fixtures/kitchensink/.env.local new file mode 100644 index 00000000000..b248646bdad --- /dev/null +++ b/packages/react-scripts/fixtures/kitchensink/.env.local @@ -0,0 +1,2 @@ +REACT_APP_X = x-from-original-local-env +REACT_APP_ORIGINAL_2 = override-from-original-local-env-2 diff --git a/packages/react-scripts/fixtures/kitchensink/.env.production b/packages/react-scripts/fixtures/kitchensink/.env.production new file mode 100644 index 00000000000..ec8bdcb54f3 --- /dev/null +++ b/packages/react-scripts/fixtures/kitchensink/.env.production @@ -0,0 +1,2 @@ +REACT_APP_X = x-from-production-env +REACT_APP_PRODUCTION = production diff --git a/packages/react-scripts/fixtures/kitchensink/integration/env.test.js b/packages/react-scripts/fixtures/kitchensink/integration/env.test.js index b90d12ab12e..b901c8f4d49 100644 --- a/packages/react-scripts/fixtures/kitchensink/integration/env.test.js +++ b/packages/react-scripts/fixtures/kitchensink/integration/env.test.js @@ -15,9 +15,16 @@ describe('Integration', () => { it('file env variables', async () => { const doc = await initDOM('file-env-variables'); - expect( - doc.getElementById('feature-file-env-variables').textContent - ).to.equal('fromtheenvfile.'); + expect(doc.getElementById('feature-file-env-original-1').textContent).to.equal('from-original-env-1'); + expect(doc.getElementById('feature-file-env-original-2').textContent).to.equal('override-from-original-local-env-2'); + + if (process.env.NODE_ENV === 'production') { + expect(doc.getElementById('feature-file-env').textContent).to.equal('production') + expect(doc.getElementById('feature-file-env-x').textContent).to.equal('x-from-production-env') + } else { + expect(doc.getElementById('feature-file-env').textContent).to.equal('development') + expect(doc.getElementById('feature-file-env-x').textContent).to.equal('x-from-development-env') + } }); it('NODE_PATH', async () => { diff --git a/packages/react-scripts/fixtures/kitchensink/src/features/env/FileEnvVariables.js b/packages/react-scripts/fixtures/kitchensink/src/features/env/FileEnvVariables.js index a8a1e98fe71..9181fa27a2d 100644 --- a/packages/react-scripts/fixtures/kitchensink/src/features/env/FileEnvVariables.js +++ b/packages/react-scripts/fixtures/kitchensink/src/features/env/FileEnvVariables.js @@ -10,7 +10,10 @@ import React from 'react'; export default () => ( - - {process.env.REACT_APP_FILE_ENV_MESSAGE}. + + {process.env.REACT_APP_ORIGINAL_1} + {process.env.REACT_APP_ORIGINAL_2} + {process.env.REACT_APP_DEVELOPMENT}{process.env.REACT_APP_PRODUCTION} + {process.env.REACT_APP_X} ); diff --git a/packages/react-scripts/scripts/build.js b/packages/react-scripts/scripts/build.js index fe4ec959d4d..f7bfee7959f 100644 --- a/packages/react-scripts/scripts/build.js +++ b/packages/react-scripts/scripts/build.js @@ -20,11 +20,7 @@ process.on('unhandledRejection', err => { throw err; }); -// Load environment variables from .env file. Suppress warnings using silent -// if this file is missing. dotenv will never modify any environment variables -// that have already been set. -// https://github.com/motdotla/dotenv -require('dotenv').config({ silent: true }); +require('../config/loadEnv'); const chalk = require('chalk'); const fs = require('fs-extra'); diff --git a/packages/react-scripts/scripts/start.js b/packages/react-scripts/scripts/start.js index 12cce8ed313..6872ec4b1fd 100644 --- a/packages/react-scripts/scripts/start.js +++ b/packages/react-scripts/scripts/start.js @@ -19,11 +19,7 @@ process.on('unhandledRejection', err => { process.env.NODE_ENV = 'development'; -// Load environment variables from .env file. Suppress warnings using silent -// if this file is missing. dotenv will never modify any environment variables -// that have already been set. -// https://github.com/motdotla/dotenv -require('dotenv').config({ silent: true }); +require('../config/loadEnv'); const fs = require('fs'); const chalk = require('chalk'); diff --git a/packages/react-scripts/scripts/test.js b/packages/react-scripts/scripts/test.js index 5c395999d97..a12f53271b3 100644 --- a/packages/react-scripts/scripts/test.js +++ b/packages/react-scripts/scripts/test.js @@ -20,11 +20,7 @@ process.on('unhandledRejection', err => { throw err; }); -// Load environment variables from .env file. Suppress warnings using silent -// if this file is missing. dotenv will never modify any environment variables -// that have already been set. -// https://github.com/motdotla/dotenv -require('dotenv').config({ silent: true }); +require('../config/loadEnv'); const jest = require('jest'); const argv = process.argv.slice(2); diff --git a/packages/react-scripts/template/.env b/packages/react-scripts/template/.env new file mode 100644 index 00000000000..3810be81aa1 --- /dev/null +++ b/packages/react-scripts/template/.env @@ -0,0 +1 @@ +REACT_APP_X = 1 diff --git a/packages/react-scripts/template/README.md b/packages/react-scripts/template/README.md index 933e9b0cdcb..c5bbfed5a35 100644 --- a/packages/react-scripts/template/README.md +++ b/packages/react-scripts/template/README.md @@ -752,6 +752,21 @@ To define permanent environment variables, create a file called `.env` in the ro REACT_APP_SECRET_CODE=abcdef ``` +What .env* files are used? + +* `.env` - Default +* `.env.development`, `.env.test`, `.env.production` - Environment-specific settings. +* `.env.local` - Local overrides. This file is loaded for all environments except test. +* `.env.development.local`, `.env.test.local`, `.env.production.local` - Local overrides of environment-specific settings. + +Files priority (file is skipped if does not exist): + +* npm test - `.env.test.local`, `env.test`, `.env.local`, `.env` +* npm run build - `.env.production.local`, `env.production`, `.env.local`, `.env` +* npm start - `.env.development.local`, `env.development`, `.env.local`, `.env` + +Priority from left to right. + These variables will act as the defaults if the machine does not explicitly set them.
Please refer to the [dotenv documentation](https://github.com/motdotla/dotenv) for more details. diff --git a/packages/react-scripts/template/gitignore b/packages/react-scripts/template/gitignore index 927d17bb9c5..d30f40ef442 100644 --- a/packages/react-scripts/template/gitignore +++ b/packages/react-scripts/template/gitignore @@ -11,8 +11,11 @@ # misc .DS_Store -.env +.env.local +.env.development.local +.env.test.local +.env.production.local + npm-debug.log* yarn-debug.log* yarn-error.log* - From dbdbfb137f159855eecf05fe6dde194db9d5073f Mon Sep 17 00:00:00 2001 From: Valerii Sorokobatko Date: Thu, 9 Mar 2017 11:05:52 +0200 Subject: [PATCH 2/5] fomrat code --- packages/react-scripts/config/loadEnv.js | 16 ++++++------- .../kitchensink/integration/env.test.js | 24 ++++++++++++++----- .../src/features/env/FileEnvVariables.js | 12 +++++++--- 3 files changed, 35 insertions(+), 17 deletions(-) diff --git a/packages/react-scripts/config/loadEnv.js b/packages/react-scripts/config/loadEnv.js index ff38e86e6d8..a6f8aad05c9 100644 --- a/packages/react-scripts/config/loadEnv.js +++ b/packages/react-scripts/config/loadEnv.js @@ -19,24 +19,24 @@ var fs = require('fs'); var paths = require('./paths'); var sequence = { - 'development': [ + development: [ paths.dotenvDevelopmentLocal, paths.dotenvDevelopment, paths.dotenvLocal, - paths.dotenv + paths.dotenv, ], - 'test': [ + test: [ paths.dotenvTestLocal, paths.dotenvTest, paths.dotenvLocal, - paths.dotenv + paths.dotenv, ], - 'production': [ + production: [ paths.dotenvProductionLocal, paths.dotenvProduction, paths.dotenvLocal, - paths.dotenv - ] + paths.dotenv, + ], }; var envConfigs = sequence[process.env.NODE_ENV]; @@ -46,7 +46,7 @@ if (envConfigs) { if (fs.existsSync(envConfig)) { require('dotenv').config({ silent: true, - path: envConfig + path: envConfig, }); } }); diff --git a/packages/react-scripts/fixtures/kitchensink/integration/env.test.js b/packages/react-scripts/fixtures/kitchensink/integration/env.test.js index b901c8f4d49..89d19fcf4b1 100644 --- a/packages/react-scripts/fixtures/kitchensink/integration/env.test.js +++ b/packages/react-scripts/fixtures/kitchensink/integration/env.test.js @@ -15,15 +15,27 @@ describe('Integration', () => { it('file env variables', async () => { const doc = await initDOM('file-env-variables'); - expect(doc.getElementById('feature-file-env-original-1').textContent).to.equal('from-original-env-1'); - expect(doc.getElementById('feature-file-env-original-2').textContent).to.equal('override-from-original-local-env-2'); + expect( + doc.getElementById('feature-file-env-original-1').textContent + ).to.equal('from-original-env-1'); + expect( + doc.getElementById('feature-file-env-original-2').textContent + ).to.equal('override-from-original-local-env-2'); if (process.env.NODE_ENV === 'production') { - expect(doc.getElementById('feature-file-env').textContent).to.equal('production') - expect(doc.getElementById('feature-file-env-x').textContent).to.equal('x-from-production-env') + expect(doc.getElementById('feature-file-env').textContent).to.equal( + 'production' + ); + expect(doc.getElementById('feature-file-env-x').textContent).to.equal( + 'x-from-production-env' + ); } else { - expect(doc.getElementById('feature-file-env').textContent).to.equal('development') - expect(doc.getElementById('feature-file-env-x').textContent).to.equal('x-from-development-env') + expect(doc.getElementById('feature-file-env').textContent).to.equal( + 'development' + ); + expect(doc.getElementById('feature-file-env-x').textContent).to.equal( + 'x-from-development-env' + ); } }); diff --git a/packages/react-scripts/fixtures/kitchensink/src/features/env/FileEnvVariables.js b/packages/react-scripts/fixtures/kitchensink/src/features/env/FileEnvVariables.js index 9181fa27a2d..55ae368e437 100644 --- a/packages/react-scripts/fixtures/kitchensink/src/features/env/FileEnvVariables.js +++ b/packages/react-scripts/fixtures/kitchensink/src/features/env/FileEnvVariables.js @@ -11,9 +11,15 @@ import React from 'react'; export default () => ( - {process.env.REACT_APP_ORIGINAL_1} - {process.env.REACT_APP_ORIGINAL_2} - {process.env.REACT_APP_DEVELOPMENT}{process.env.REACT_APP_PRODUCTION} + + {process.env.REACT_APP_ORIGINAL_1} + + + {process.env.REACT_APP_ORIGINAL_2} + + + {process.env.REACT_APP_DEVELOPMENT}{process.env.REACT_APP_PRODUCTION} + {process.env.REACT_APP_X} ); From 20a0972935cec54a40986bb8417903bab8390b42 Mon Sep 17 00:00:00 2001 From: Dan Abramov Date: Thu, 11 May 2017 18:31:27 +0100 Subject: [PATCH 3/5] Hide doc --- packages/react-scripts/template/README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/react-scripts/template/README.md b/packages/react-scripts/template/README.md index c5bbfed5a35..cc66b9526bb 100644 --- a/packages/react-scripts/template/README.md +++ b/packages/react-scripts/template/README.md @@ -752,6 +752,8 @@ To define permanent environment variables, create a file called `.env` in the ro REACT_APP_SECRET_CODE=abcdef ``` + These variables will act as the defaults if the machine does not explicitly set them.
Please refer to the [dotenv documentation](https://github.com/motdotla/dotenv) for more details. From 98a1ee166db2262f130fbe8abc157496af06e8a0 Mon Sep 17 00:00:00 2001 From: Dan Abramov Date: Thu, 11 May 2017 18:58:24 +0100 Subject: [PATCH 4/5] Slightly rework the PR * Remove .env in default template * Use just one entry in the paths * Unify env.js and loadEnv.js --- packages/react-scripts/config/env.js | 30 ++++++++++++++ packages/react-scripts/config/loadEnv.js | 53 ------------------------ packages/react-scripts/config/paths.js | 7 ---- packages/react-scripts/scripts/build.js | 3 +- packages/react-scripts/scripts/start.js | 3 +- packages/react-scripts/scripts/test.js | 3 +- packages/react-scripts/template/.env | 1 - 7 files changed, 36 insertions(+), 64 deletions(-) delete mode 100644 packages/react-scripts/config/loadEnv.js delete mode 100644 packages/react-scripts/template/.env diff --git a/packages/react-scripts/config/env.js b/packages/react-scripts/config/env.js index c018467a95b..0097f3cf304 100644 --- a/packages/react-scripts/config/env.js +++ b/packages/react-scripts/config/env.js @@ -10,6 +10,36 @@ // @remove-on-eject-end 'use strict'; +var fs = require('fs'); +var paths = require('./paths'); + +var NODE_ENV = process.env.NODE_ENV; +if (!NODE_ENV) { + throw new Error( + 'The NODE_ENV environment variable is required but was not specified.' + ); +} + +// https://github.com/bkeepers/dotenv#what-other-env-files-can-i-use +var dotenvFiles = [ + paths.dotenv + '.' + NODE_ENV + '.local', + paths.dotenv + '.' + NODE_ENV, + paths.dotenv + '.local', + paths.dotenv, +]; +// Load environment variables from .env* files. Suppress warnings using silent +// if this file is missing. dotenv will never modify any environment variables +// that have already been set. +// https://github.com/motdotla/dotenv +dotenvFiles.forEach(dotenvFile => { + if (fs.existsSync(dotenvFile)) { + require('dotenv').config({ + silent: true, + path: dotenvFile, + }); + } +}); + // Grab NODE_ENV and REACT_APP_* environment variables and prepare them to be // injected into the application via DefinePlugin in Webpack configuration. const REACT_APP = /^REACT_APP_/i; diff --git a/packages/react-scripts/config/loadEnv.js b/packages/react-scripts/config/loadEnv.js deleted file mode 100644 index a6f8aad05c9..00000000000 --- a/packages/react-scripts/config/loadEnv.js +++ /dev/null @@ -1,53 +0,0 @@ -// @remove-on-eject-begin -/** - * Copyright (c) 2015-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - */ -// @remove-on-eject-end -'use strict'; - -// Load environment variables from .env* files. Suppress warnings using silent -// if this file is missing. dotenv will never modify any environment variables -// that have already been set. -// https://github.com/motdotla/dotenv -// Used .env* files - https://github.com/bkeepers/dotenv#what-other-env-files-can-i-use -var fs = require('fs'); -var paths = require('./paths'); - -var sequence = { - development: [ - paths.dotenvDevelopmentLocal, - paths.dotenvDevelopment, - paths.dotenvLocal, - paths.dotenv, - ], - test: [ - paths.dotenvTestLocal, - paths.dotenvTest, - paths.dotenvLocal, - paths.dotenv, - ], - production: [ - paths.dotenvProductionLocal, - paths.dotenvProduction, - paths.dotenvLocal, - paths.dotenv, - ], -}; - -var envConfigs = sequence[process.env.NODE_ENV]; - -if (envConfigs) { - envConfigs.forEach(envConfig => { - if (fs.existsSync(envConfig)) { - require('dotenv').config({ - silent: true, - path: envConfig, - }); - } - }); -} diff --git a/packages/react-scripts/config/paths.js b/packages/react-scripts/config/paths.js index 187bce0bb8c..440f359e416 100644 --- a/packages/react-scripts/config/paths.js +++ b/packages/react-scripts/config/paths.js @@ -75,13 +75,6 @@ function getServedPath(appPackageJson) { // config after eject: we're in ./config/ module.exports = { dotenv: resolveApp('.env'), - dotenvLocal: resolveApp('.env.local'), - dotenvDevelopment: resolveApp('.env.development'), - dotenvDevelopmentLocal: resolveApp('.env.development.local'), - dotenvTest: resolveApp('.env.test'), - dotenvTestLocal: resolveApp('.env.test.local'), - dotenvProduction: resolveApp('.env.production'), - dotenvProductionLocal: resolveApp('.env.production.local'), appBuild: resolveApp('build'), appPublic: resolveApp('public'), appHtml: resolveApp('public/index.html'), diff --git a/packages/react-scripts/scripts/build.js b/packages/react-scripts/scripts/build.js index f7bfee7959f..da9004f9ee6 100644 --- a/packages/react-scripts/scripts/build.js +++ b/packages/react-scripts/scripts/build.js @@ -20,7 +20,8 @@ process.on('unhandledRejection', err => { throw err; }); -require('../config/loadEnv'); +// Ensure environment variables are read. +require('../config/env'); const chalk = require('chalk'); const fs = require('fs-extra'); diff --git a/packages/react-scripts/scripts/start.js b/packages/react-scripts/scripts/start.js index 6872ec4b1fd..b44fc44c907 100644 --- a/packages/react-scripts/scripts/start.js +++ b/packages/react-scripts/scripts/start.js @@ -19,7 +19,8 @@ process.on('unhandledRejection', err => { process.env.NODE_ENV = 'development'; -require('../config/loadEnv'); +// Ensure environment variables are read. +require('../config/env'); const fs = require('fs'); const chalk = require('chalk'); diff --git a/packages/react-scripts/scripts/test.js b/packages/react-scripts/scripts/test.js index a12f53271b3..ef333e6c004 100644 --- a/packages/react-scripts/scripts/test.js +++ b/packages/react-scripts/scripts/test.js @@ -20,7 +20,8 @@ process.on('unhandledRejection', err => { throw err; }); -require('../config/loadEnv'); +// Ensure environment variables are read. +require('../config/env'); const jest = require('jest'); const argv = process.argv.slice(2); diff --git a/packages/react-scripts/template/.env b/packages/react-scripts/template/.env deleted file mode 100644 index 3810be81aa1..00000000000 --- a/packages/react-scripts/template/.env +++ /dev/null @@ -1 +0,0 @@ -REACT_APP_X = 1 From c4ed039de034f4792e5e75a2452f985627473780 Mon Sep 17 00:00:00 2001 From: Dan Abramov Date: Thu, 11 May 2017 19:02:57 +0100 Subject: [PATCH 5/5] Oops, forgot these folks --- packages/react-scripts/config/paths.js | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/packages/react-scripts/config/paths.js b/packages/react-scripts/config/paths.js index 440f359e416..915b1a83865 100644 --- a/packages/react-scripts/config/paths.js +++ b/packages/react-scripts/config/paths.js @@ -96,15 +96,8 @@ function resolveOwn(relativePath) { // config before eject: we're in ./node_modules/react-scripts/config/ module.exports = { - appPath: resolveApp('.'), dotenv: resolveApp('.env'), - dotenvLocal: resolveApp('.env.local'), - dotenvDevelopment: resolveApp('.env.development'), - dotenvDevelopmentLocal: resolveApp('.env.development.local'), - dotenvTest: resolveApp('.env.test'), - dotenvTestLocal: resolveApp('.env.test.local'), - dotenvProduction: resolveApp('.env.production'), - dotenvProductionLocal: resolveApp('.env.production.local'), + appPath: resolveApp('.'), appBuild: resolveApp('build'), appPublic: resolveApp('public'), appHtml: resolveApp('public/index.html'), @@ -133,15 +126,8 @@ if ( __dirname.indexOf(path.join('packages', 'react-scripts', 'config')) !== -1 ) { module.exports = { - appPath: resolveApp('.'), dotenv: resolveOwn('template/.env'), - dotenvLocal: resolveOwn('template/.env.local'), - dotenvDevelopment: resolveOwn('template/.env.development'), - dotenvDevelopmentLocal: resolveOwn('template/.env.development.local'), - dotenvTest: resolveOwn('template/.env.test'), - dotenvTestLocal: resolveOwn('template/.env.test.local'), - dotenvProduction: resolveOwn('template/.env.production'), - dotenvProductionLocal: resolveOwn('template/.env.production.local'), + appPath: resolveApp('.'), appBuild: resolveOwn('../../build'), appPublic: resolveOwn('template/public'), appHtml: resolveOwn('template/public/index.html'),