Refactor #2156

Updated by bmbouter almost 4 years ago

pulp_celerybeat currently uses a mongodb collection with a uniqueness constraint to obtain a lock. Multiple processes attempt to insert a document, and the one who succeeds is the active process.

Given the lock model that has already been created in django, convert pulp_celerybeat to use it instead of the mongo model.

It's important to test that these locks are acquired and released as expected. Hand testing this by manually invoking two pulp_celerybeats and testing failover would be good.