clean_backend_objects to remove pulp consumers not associated to any Content Host
Description of problem:
Currently clean_backend_objects removes Content Hosts that miss either pulp or candlepin counterpart. There are cases when the opposite is required, i.e. when pulp or candlepin consumer exists for non-existing Content Host.
We shall have a mechanism to remove such pulp/candlepin consumers to make those DBs aligned with foreman (Content) Hosts db.
It can be achieved either by extending clean_backend_objects script (preffered from user-point of view, could be problematic due to current implementation), or implementing a new one.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Have some pulp or candlepin consumer without associated Content Host (i.e. (re)create a pulp/candlepin consumer manually, e.g. by 1) registering a host, 2) taking pulp and candlepin DB backups, 3) unregistering the host, 4) reverting pulp/candlepin DBs prior unregister)
2. foreman-rake katello:clean_backend_objects
3. Check if pulp/candlepin consumers match the foreman Content Hosts
extra pulp/candlepin consumer exists
no such orphaned consumer present