Show More
@@ -206,7 +206,7 b' class RepoAppView(BaseAppView):' | |||
|
206 | 206 | c.repository_pull_requests = self.db_repo_pull_requests |
|
207 | 207 | self.path_filter = PathFilter(None) |
|
208 | 208 | |
|
209 |
c.repository_requirements_missing = |
|
|
209 | c.repository_requirements_missing = {} | |
|
210 | 210 | try: |
|
211 | 211 | self.rhodecode_vcs_repo = self.db_repo.scm_instance() |
|
212 | 212 | if self.rhodecode_vcs_repo: |
@@ -214,20 +214,29 b' class RepoAppView(BaseAppView):' | |||
|
214 | 214 | c.auth_user.username) |
|
215 | 215 | self.path_filter = PathFilter(path_perms) |
|
216 | 216 | except RepositoryRequirementError as e: |
|
217 |
c.repository_requirements_missing = |
|
|
217 | c.repository_requirements_missing = {'error': str(e)} | |
|
218 | 218 | self._handle_missing_requirements(e) |
|
219 | 219 | self.rhodecode_vcs_repo = None |
|
220 | 220 | |
|
221 | 221 | c.path_filter = self.path_filter # used by atom_feed_entry.mako |
|
222 | 222 | |
|
223 | if (not c.repository_requirements_missing | |
|
224 | and self.rhodecode_vcs_repo is None): | |
|
223 | if self.rhodecode_vcs_repo is None: | |
|
225 | 224 | # unable to fetch this repo as vcs instance, report back to user |
|
226 | 225 | h.flash(_( |
|
227 | 226 | "The repository `%(repo_name)s` cannot be loaded in filesystem. " |
|
228 | 227 | "Please check if it exist, or is not damaged.") % |
|
229 | 228 | {'repo_name': c.repo_name}, |
|
230 | 229 | category='error', ignore_duplicate=True) |
|
230 | if c.repository_requirements_missing: | |
|
231 | route = self.request.matched_route.name | |
|
232 | if route.startswith(('edit_repo', 'repo_summary')): | |
|
233 | # allow summary and edit repo on missing requirements | |
|
234 | return c | |
|
235 | ||
|
236 | raise HTTPFound( | |
|
237 | h.route_path('repo_summary', repo_name=self.db_repo_name)) | |
|
238 | ||
|
239 | else: # redirect if we don't show missing requirements | |
|
231 | 240 | raise HTTPFound(h.route_path('home')) |
|
232 | 241 | |
|
233 | 242 | return c |
@@ -234,7 +234,8 b' class TestSummaryView(object):' | |||
|
234 | 234 | Repository, 'scm_instance', side_effect=RepositoryRequirementError) |
|
235 | 235 | |
|
236 | 236 | with scm_patcher: |
|
237 |
response = self.app.get( |
|
|
237 | response = self.app.get( | |
|
238 | route_path('repo_summary', repo_name=repo_name)) | |
|
238 | 239 | assert_response = AssertResponse(response) |
|
239 | 240 | assert_response.element_contains( |
|
240 | 241 | '.main .alert-warning strong', 'Missing requirements') |
General Comments 0
You need to be logged in to leave comments.
Login now