tree d062044ac861423931957ef5ee66a7add878db99
parent 1420ab2dd635e3d337609fa2bd45e65c6861d0e6
author S.Çağlar Onur <caglar@10ur.org> 1423762574 -0500
committer S.Çağlar Onur <caglar@10ur.org> 1423762574 -0500

Check the existence of the images_path

ERROR:planetstack.log:[Errno 2] No such file or directory: '/opt/xos/images' BEG TRACEBACK
Traceback (most recent call last):
  File "/opt/xos/observer/event_loop.py", line 349, in sync
    failed_objects = sync_step(failed=list(self.failed_step_objects), deletion=deletion)
  File "/opt/xos/observer/openstacksyncstep.py", line 14, in __call__
    return self.call(**args)
  File "/opt/xos/observer/syncstep.py", line 97, in call
    pending = self.fetch_pending(deletion)
  File "/opt/xos/observer/steps/sync_images.py", line 22, in fetch_pending
    for f in os.listdir(images_path):
OSError: [Errno 2] No such file or directory: '/opt/xos/images'
ERROR:planetstack.log:[Errno 2] No such file or directory: '/opt/xos/images' END TRACEBACK

Signed-off-by: S.Çağlar Onur <caglar@10ur.org>
