Issue #1353

Updated by cduryee over 8 years ago

When using the export distributor with the "start_date" parameter, the distributor will fail with an exception if there are no rpms or errata associated with the repo since start_date. 

 For example: 

 pulp-admin rpm repo create --repo-id zoo --feed 
 pulp-admin rpm repo sync run --repo-id zoo 
 # this works 
 pulp-admin rpm repo export run --repo-id zoo 
 # this fails 
 pulp-admin rpm repo export run --repo-id zoo --start-date <utc date after the time of the last sync> 

 Here is the stack: 

 Exception caught from plugin during publish for repo [zoo] 
 Traceback (most recent call last): 
 File "/usr/lib/python2.7/site-packages/pulp/server/managers/repo/", line 116, in _do_publish 
   publish_report = publish_repo(transfer_repo, conduit, call_config) 
 File "/usr/lib/python2.7/site-packages/pulp/server/async/", line 578, in wrap_f 
   return f(*args, **kwargs) 
 File "/usr/lib/python2.7/site-packages/pulp_rpm/plugins/distributors/export_distributor/", line 135, in publish_repo 
   return self._publisher.publish() 
 File "/usr/lib/python2.7/site-packages/pulp/plugins/util/", line 557, in publish 
   return self.process_lifecycle() 
 File "/usr/lib/python2.7/site-packages/pulp/plugins/util/", line 502, in process_lifecycle 
   super(PluginStep, self).process_lifecycle() 
 File "/usr/lib/python2.7/site-packages/pulp/plugins/util/", line 126, in process_lifecycle 
 File "/usr/lib/python2.7/site-packages/pulp/plugins/util/", line 203, in process 
 File "/usr/lib/python2.7/site-packages/pulp/plugins/util/", line 245, in _process_block 
 File "/usr/lib/python2.7/site-packages/pulp/plugins/util/", line 890, in process_main 
   copytree(self.source_dir, self.target_dir, symlinks=self.preserve_symlinks) 
 File "/usr/lib/python2.7/site-packages/pulp/server/", line 215, in copytree 
   names = os.listdir(src) 
 Error: [Errno 2] No such file or directory: '/var/cache/pulp/reserved_resource_worker-0@beav-2/a4069b22-9444-401e-bc9e-bd5c0433aeea/scratch' 


 It would be better if the task succeeded (with an appropriate message) and simply did not create an export ISO.