I’ve enabled other plugins which are running fine on a recently upgraded installation of Maple that is running on a newly-created Kubernetes cluster. For some reason i’m getting an error about kubernetes “trying and failing to pull image for openedx/mfe-*** (mfe)”.
I’m following the installation instructions from the README, which are as follows
pip install tutor-mfe
tutor plugins enable mfe
tutor config save
# console output:
# ----------------------
Successfully built tutor-mfe
Installing collected packages: tutor-mfe
Successfully installed tutor-mfe-13.0.4
Plugin mfe enabled
Configuration saved to /home/runner/work/openedx_devops/openedx_devops/tutor/config.yml
You should now re-generate your environment with `tutor config save`.
Configuration saved to /home/runner/work/openedx_devops/openedx_devops/tutor/config.yml
Seems simple, but I end up with a status of “ImagePullBackOff” afterwards. see screen shot below.
mfe runs from its own image which you need to build and push to a public registry, the same as you already are doing for openedx.
during deployments you need to point tutor to this registry.
I added a Github Actions workflow to the Cookiecutter devops repo that demonstrates step one: tutor_build_mfe_image.yml, and i also added the additional step to the prod deployment workflow, tutor_deploy_prod.yml
tutor config save --set MFE_DOCKER_IMAGE=URI-OF-YOUR-IMAGE
pip install tutor-mfe
tutor plugins enable mfe
tutor config save
Note that unlike the openedx image, subsequent rebuilds of the mfe image are not automatically redeployed into the Kubernetes cluster. For some reason, I have to manually restart the mfe pod in order to get the latest build of the mfe image running in the cluster.
I can also share real-world code for this, as follows:
An update on this question: since tutor 14.x it’s no longer necessary to build your own container as overhangio now takes care of this for you. see: https://hub.docker.com/r/overhangio/openedx-mfe