amundsen icon indicating copy to clipboard operation
amundsen copied to clipboard

Allow configuration of custom features without using entry_points or needing to rebuild the app

Open jdavidheiser opened this issue 4 years ago • 0 comments

Expected Behavior or Use Case

As we use more and more features of Amundsen, the mechanisms for configuration are starting to feel clunky. Specifically, per https://github.com/lyft/amundsenfrontendlibrary/blob/54de01bdc574665316f0517aefbd55cf7ca37ef0/docs/configuration.md#python-entry-points we need to fork the repo and maintain a custom setup.py to be able to configure announcements, custom logging, or a preview client.

Possible Implementation

Rather than using entry_points, it seems like Amundsen could fetch the appropriate classes to load from the Python configuration set up in FRONTEND_SVC_CONFIG_MODULE_CLASS, or from environment variables. It seems like it would be pretty straightforward to introduce a new environment variable like FRONTEND_SVC_ANNOUNCEMENT_MODULE_CLASS and check it in https://github.com/lyft/amundsenfrontendlibrary/blob/395798025361ee140fb73c7065e9a953d94a1e35/amundsen_application/api/announcements/v0.py#L16 - and similar for preview and logging.

jdavidheiser avatar Jun 17 '20 13:06 jdavidheiser