##// END OF EJS Templates
Fixed bug in repos group discovery, when inner folder of bare git repos were detected as a group
marcink -
r2497:5a8c19c4 beta
parent child Browse files
Show More
@@ -44,7 +44,7 b' from rhodecode.model.repos_group import '
44 44 from rhodecode.model.forms import ReposGroupForm
45 45 from rhodecode.model.meta import Session
46 46 from rhodecode.model.repo import RepoModel
47 from webob.exc import HTTPInternalServerError
47 from webob.exc import HTTPInternalServerError, HTTPNotFound
48 48
49 49 log = logging.getLogger(__name__)
50 50
@@ -268,8 +268,10 b' class ReposGroupsController(BaseControll'
268 268 the group by id view instead
269 269 """
270 270 group_name = group_name.rstrip('/')
271 id_ = RepoGroup.get_by_group_name(group_name).group_id
272 return self.show(id_)
271 id_ = RepoGroup.get_by_group_name(group_name)
272 if id_:
273 return self.show(id_.group_id)
274 raise HTTPNotFound
273 275
274 276 @HasReposGroupPermissionAnyDecorator('group.read', 'group.write',
275 277 'group.admin')
@@ -235,6 +235,15 b' def is_valid_repos_group(repos_group_nam'
235 235 if is_valid_repo(repos_group_name, base_path):
236 236 return False
237 237
238 try:
239 # we need to check bare git repos at higher level
240 # since we might match branches/hooks/info/objects or possible
241 # other things inside bare git repo
242 get_scm(os.path.dirname(full_path))
243 return False
244 except VCSError:
245 pass
246
238 247 # check if it's a valid path
239 248 if os.path.isdir(full_path):
240 249 return True
General Comments 0
You need to be logged in to leave comments. Login now