Task #1220

Updated by bmbouter about 6 years ago

Using any kind of model (mongoengine or not) in a migration is problematic. Models change over time, but migrations should always remain the same. This task is to document that migrations should use PyMongo directly and never use a model of any kind.

In addition to the maintainability problem, mongoengine models don't even work as expected because the save() handler won't work as it does in other parts of the code. Normally save() moves files into place and in the puppet case calculates checksums, but at pulp-manage-db time none of those things work because work. This issue used to contain a detailed description of why, but you can look at the PluginManager isn't instantiated prior diff history if you want to the models running. see why this doesn't work.