You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Earliest Open edX Named Release Without This Functionality
Redwood - 2024 - 04
Rationale
MFE environment variable config is notoriously inflexible and brittle. It only accept strings, which severely limits the expressiveness and approachability of configuring an MFE. The community-supported release via Tutor does not use this config - it relies on runtime config. Further, we're about to add JS file config for those who still use build-time config, which is much more flexible. MFE env variable config should be removed.
⚠️Note: I'm still fleshing out the required steps, which will affect the Removal, Replacement, Deprecation, and Migration steps below.⚠️
This business here, where we use process.env to get values for our MFE config. We'd also remove all the .env files in all MFEs, and support for the DotEnv plugin in frontend-build.
Replacement
Stub: We'll be replacing .env config with js files, which are much more flexible and expressive
Deprecation
Stub: We plan to include build-time deprecation warnings which will need to be added to frontend-build.
Migration
Stub: Migration will need to start with Tutor and any other deployment methods, making them flexible enough to accept a JS file instead of a .env file for setting configuration. Once they can handle the new format, we can start cutting MFEs over.
Additional Info
The text was updated successfully, but these errors were encountered:
Proposal Date
2023-05-23
Target Ticket Acceptance Date
2023-06-06
Earliest Open edX Named Release Without This Functionality
Redwood - 2024 - 04
Rationale
MFE environment variable config is notoriously inflexible and brittle. It only accept strings, which severely limits the expressiveness and approachability of configuring an MFE. The community-supported release via Tutor does not use this config - it relies on runtime config. Further, we're about to add JS file config for those who still use build-time config, which is much more flexible. MFE env variable config should be removed.
Removal
Stub:
https://github.com/openedx/frontend-platform/blob/master/src/config.js#L42
This business here, where we use
process.env
to get values for our MFE config. We'd also remove all the .env files in all MFEs, and support for the DotEnv plugin in frontend-build.Replacement
Stub: We'll be replacing .env config with js files, which are much more flexible and expressive
Deprecation
Stub: We plan to include build-time deprecation warnings which will need to be added to frontend-build.
Migration
Stub: Migration will need to start with Tutor and any other deployment methods, making them flexible enough to accept a JS file instead of a .env file for setting configuration. Once they can handle the new format, we can start cutting MFEs over.
Additional Info
The text was updated successfully, but these errors were encountered: