Configuration
The configuration of the application is pretty straight forward. You just need to follow the wizard and choose for each service if you want to deploy a new resource or link an existing one.
The available resources will be:
micro-lcjavascript bundle at/micro-lc/micro-lc.production.js(and relative assets)back-kitjavascript bundles under/back-kit- the frontend
index.htmlentrypoint at/mfe-application - configurations at
/micro-lc-configurations
Your new frontend will be exposed under /mfe-application, but you can always change that in the endpoints section.
Architecture
All the resources needed for the frontend are available through a single pod, that contains a modified instance of micro-lc config server. This server is responsible for exposing both micro-lc entrypoint (index.html file) and configurations, moreover, micro-lc bundle and back-kit bundles are served by this service instead of fetching from a CDN.
Four config maps are mounted on the config server with just enough to spawn a functioning frontend.
micro-lc-static-fileswith theindex.htmlmicro-lc entrypoint,micro-lc-configurationswith micro-lc configuration files,micro-lc-server-configurationwith the configuration file of the server itself, andmicro-lc-assetswith any other static file you wish to serve.
Apart from micro-lc-assets, the config maps are marked as readonly since they are meant to be managed through the Microfrontend Composer Console section.
Moreover micro-ls-static-files must preserve any local file already mounted.
Then, inside micro-lc-static-files, index.html is exposed at /mfe-application, /mfe-application/ or /mfe-application/index.html, or under any not found route scoped by /mfe-application (this allow the micro-lc router to work). Also micro-lc-assets files are exposed through /mfe-application endpoint, while configuration files (the content of micro-lc-configurations) is exposed through /micro-lc-configurations endpoint.
If you wish to change endpoints, pay attention to path rewrites: the endpoint exposing static files needs to be rewritten to /public, while the one exposing configurations needs to be rewritten to /configurations.