##// END OF EJS Templates
accept that repos are read-only - very convenient for testing....
marcink -
r3980:3648a2b2 default
parent child Browse files
Show More
@@ -614,16 +614,24 b' class DbManage(object):'
614 614 # check proper dir
615 615 if not os.path.isdir(path):
616 616 path_ok = False
617 log.error('Given path %s is not a valid directory' % path)
617 log.error('Given path %s is not a valid directory' % (path,))
618 618
619 619 elif not os.path.isabs(path):
620 620 path_ok = False
621 log.error('Given path %s is not an absolute path' % path)
621 log.error('Given path %s is not an absolute path' % (path,))
622
623 # check if path is at least readable.
624 if not os.access(path, os.R_OK):
625 path_ok = False
626 log.error('Given path %s is not readable' % (path,))
622 627
623 # check write access
628 # check write access, warn user about non writeable paths
624 629 elif not os.access(path, os.W_OK) and path_ok:
625 path_ok = False
626 log.error('No write permission to given path %s' % path)
630 log.warn('No write permission to given path %s' % (path,))
631 if not ask_ok('Given path %s is not writeable, do you want to '
632 'continue with read only mode ? [y/n]' % (path,)):
633 log.error('Canceled by user')
634 sys.exit(-1)
627 635
628 636 if retries == 0:
629 637 sys.exit('max retries reached')
@@ -635,7 +643,7 b' class DbManage(object):'
635 643
636 644 if real_path != os.path.normpath(path):
637 645 if not ask_ok(('Path looks like a symlink, Rhodecode will store '
638 'given path as %s ? [y/n]') % (real_path)):
646 'given path as %s ? [y/n]') % (real_path,)):
639 647 log.error('Canceled by user')
640 648 sys.exit(-1)
641 649
@@ -201,9 +201,11 b' def get_filesystem_repos(path, recursive'
201 201 log.debug('now scanning in %s location recursive:%s...' % (path, recursive))
202 202
203 203 def _get_repos(p):
204 if not os.access(p, os.R_OK) or not os.access(p, os.X_OK):
205 log.warn('ignoring repo path without access: %s', p)
206 return
204 207 if not os.access(p, os.W_OK):
205 log.warn('ignoring repo path without write access: %s', p)
206 return
208 log.warn('repo path without write access: %s', p)
207 209 for dirpath in os.listdir(p):
208 210 if os.path.isfile(os.path.join(p, dirpath)):
209 211 continue
@@ -744,9 +744,12 b' class ScmModel(BaseModel):'
744 744
745 745 if _rhodecode_hook or force_create:
746 746 log.debug('writing %s hook file !' % (h_type,))
747 with open(_hook_file, 'wb') as f:
748 tmpl = tmpl.replace('_TMPL_', rhodecode.__version__)
749 f.write(tmpl)
750 os.chmod(_hook_file, 0755)
747 try:
748 with open(_hook_file, 'wb') as f:
749 tmpl = tmpl.replace('_TMPL_', rhodecode.__version__)
750 f.write(tmpl)
751 os.chmod(_hook_file, 0755)
752 except IOError, e:
753 log.error('error writing %s: %s' % (_hook_file, e))
751 754 else:
752 755 log.debug('skipping writing hook file')
General Comments 0
You need to be logged in to leave comments. Login now