Skip to content

Expose paths overrides as envvars #11075

Description

@lmeyerov

Is your proposal related to a problem?

We are trying to stay un-ejected to simplify maintenance across repos, and identified paths.js variable modifications as one of the main deviation points. Currently we eject, modify paths.js (and a couple other points), and that's it... and then every X months, have to manually resync against CRA. Current CRA recommendations like keep a separate CRA fork per component also cause high burdens we do not want.

Allowing more of them to cascade with the environment would solve much of the problem for us. Some are already exposed as envvars, but not all, so the proposal is to expose them more consistently:

//paths.js
module.exports = {
  //...
  appPublic: resolveApp(process.env.APP_PUBLIC || 'public'),
  appHtml: resolveApp(process.env.APP_HTML || `public/index.html`),
  //...

Describe the solution you'd like

See above snippet: expose everything in paths.js as env vars, not just a few

Describe alternatives you've considered

See above

Additional context

Will be filing a couple other generalizations

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions