Closed robrap closed 9 months ago
(I'm not working actively on Devstack, but I have some leftover context)
/edx/bin/edxapp-migrate-lms
was a trivial wrapper around ./manage.py lms migrate
that existed on the Ansible-based images. Any remaining Ansible-based deployments probably still use it. My intuition is that the script was provided as an abstraction around migration in case it ever happend that ./manage.py ... migrate
wasn't sufficient; AFAICT that never happened.
I am guessing that this error is happening because the new Ansible-free edx-platform images don't include that wrapper script. So, one solution would be to add /edx/bin/edxapp-migrate-lms
to the Ansible-free edx-platform image.
Another solution (and my recommendation) is to deprecate paver update_db
, since neither Tutor nor Devstack need it. For backwards compatibility for Ansible deployers, openedx/configuration could be updated to use ./manage.py ... migrate
instead of paver.
Regarding general deprecation of Paver: paver update_assets is being deprecated, and the remaining edx-platform Paver commands strike me as trivial and/or unused.
Would it make sense to add migrate to the Makefile to better match other services and the cookiecutter? https://github.com/openedx/edx-cookiecutters/blob/7fdf208c0844cdbdeeb6234df16d29a6af11a41c/cookiecutter-django-ida/%7B%7Bcookiecutter.repo_name%7D%7D/Makefile#L88-L89
I'm supportive of it!
Possibly this ticket should be moved to a DEPR for paver update_db
.
The DEPR has been created here: https://github.com/openedx/edx-platform/issues/32683
Using
paver update_db
gives the following:Multiple people have seen this. A workaround seems to be to run
make dev.migrate.lms
in devstack, and/or what that runs, which doesn't seem to be paver.There is no DEPR for paver, but should there be? Should this be removed and docs updated, rather than fixing? Not sure, but we probably shouldn't leave this broken.