Skip to content

[DEPR]: MFE environment variable config #193

@davidjoy

Description

@davidjoy

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.

⚠️ Note: I'm still fleshing out the required steps, which will affect the Removal, Replacement, Deprecation, and Migration steps below. ⚠️

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    deprProposal for deprecation & removal per OEP-21

    Type

    Projects

    Status

    Rejected

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions