Using MFE_CONFIG to set LOGO_TRADEMARK_URL for the footer component in Olive

Hi all!

I am trying to override the LOGO_TRADEMARK_URL value and would like to see it pulled in to the footer component, however it doesn’t seem to work and I get the default site logo there.

I am wondering if it’s because the MFE_CONFIG is actually defined below the openedx-lms-production-settings patch in tutor/env/apps/openedx/settings/lms/production.py and the LOGO_TRADEMARK_URL is again set to the default value?
Or am I missing something? The footer component is installed with a mfe-dockerfile-post-npm-install patch.

Thanks in advance!

You are spot on. What’s the name of your plugin? If it comes before “mfe” then its patches will be applied before the mfe plugin patches.

Can you try to apply your patch with low priority, such that it is applied last?

hooks.Filters.ENV_PATCHES.add_items(
    [
        (
            "openedx-lms-production-settings",
            """..."""
        ),
    ],
    priority=hooks.priorities.LOW
)

:eyes: @arbrandes if this analysis is correct then we should modify the docs here: GitHub - overhangio/tutor-mfe: This plugin makes it possible to easily add micro frontend (MFE) applications on top of an Open edX platform that runs with Tutor.

It’s mfeconfig and it’s a yaml plugin. So in config.yml it’s listed after the mfe plugin but I cannot set the priority there.

Agreed.

Right, I see where there is a bug. the mfe plugin adds items to the ENV_PATCHES filter, while the yaml plugin patches are added to ENV_PATCH. Tutor processes the items from ENV_PATCH first, so your patch is added before the mfe patches.

We should probably fix Tutor such that yaml plugins add patches to ENV_PATCHES instead of ENV_PATCH (I just created this PR: fix: v0 plugin patch ordering by regisb · Pull Request #817 · overhangio/tutor · GitHub). But this is not going to resolve your issue @mrtmm if you’re not on the latest tutor version. I strongly suggest you convert your yaml plugin to Python. Alternatively, create a simple mfeconfig2.py plugin where you add just your patch:

from tutor import hooks

hooks.Filters.ENV_PATCHES.add_items([
    ("openedx-lms-production-settings", """
MFE_CONFIG[...] = ...
""")
])
3 Likes

We only need this for Olive so we will be on the latest tutor version and this should fix it for us then, thanks! :slight_smile:

Finally got around testing this again and can confirm that with the latest Tutor version (15.3.3) the footer logo is showing up correctly, thanks @regis! :slight_smile:

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.