pulp/pulp_puppet — pull request #98 by jortel (2014-01-27 21:03:53+00:00)
Title: Support both puppet forge and directory synchronization

Update the puppet importer to support synchronization with a directory containing a PULP_MANIFEST and puppet modules (tarballs). Currently, the importer unconditionally delegates the synchronization to an object that is puppet forge aware. In the PR, a 2nd object is added to synchronize with a directory. The importer has been updated to select the object to which it delegates the work based on the feed URL.

More specifically:
- Add a function object to implement the (new) directory synchronization.
- Update the importer to conditionally delegate the synchronization based on the feed URL.
- Rename the existing *runner* to be clearer about what it provides. Also, converted it to a function object since it was named a *runner* which only had perform() and cancel() methods. Seemed cleaner and matched the new delegate.

Lastly, I added a Timer class for reporting elapsed time. This probably should go into the platform server common but decided to just leave it here for now. We can do a follow up PR to move it if the team agrees.