mirror of
git://git.yoctoproject.org/layerindex-web.git
synced 2025-07-19 20:59:01 +02:00
Add link to maintenance plan in layer detail
If the RRS is enabled, then add a way to get from the layer detail page to any maintenance plans in which the layer is included. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
This commit is contained in:
parent
88467d1ab9
commit
b2a67d718c
|
@ -368,6 +368,10 @@ class LayerDetailView(DetailView):
|
||||||
context['updates'] = layerbranch.layerupdate_set.order_by('-started')
|
context['updates'] = layerbranch.layerupdate_set.order_by('-started')
|
||||||
context['url_branch'] = self.kwargs['branch']
|
context['url_branch'] = self.kwargs['branch']
|
||||||
context['this_url_name'] = resolve(self.request.path_info).url_name
|
context['this_url_name'] = resolve(self.request.path_info).url_name
|
||||||
|
if 'rrs' in settings.INSTALLED_APPS:
|
||||||
|
from rrs.models import MaintenancePlanLayerBranch
|
||||||
|
# We don't care about branch, only that the layer is included
|
||||||
|
context['rrs_maintplans'] = [m.plan for m in MaintenancePlanLayerBranch.objects.filter(layerbranch__layer=layer)]
|
||||||
return context
|
return context
|
||||||
|
|
||||||
class LayerReviewDetailView(LayerDetailView):
|
class LayerReviewDetailView(LayerDetailView):
|
||||||
|
|
|
@ -2,11 +2,14 @@ from django.conf.urls import patterns, include, url
|
||||||
|
|
||||||
from rrs.models import Release, Milestone
|
from rrs.models import Release, Milestone
|
||||||
from rrs.views import RecipeListView, recipes_report, RecipeDetailView, \
|
from rrs.views import RecipeListView, recipes_report, RecipeDetailView, \
|
||||||
MaintainerListView, FrontPageRedirect
|
MaintainerListView, FrontPageRedirect, MaintenancePlanRedirect
|
||||||
|
|
||||||
urlpatterns = patterns('',
|
urlpatterns = patterns('',
|
||||||
url(r'^$', FrontPageRedirect.as_view(),
|
url(r'^$', FrontPageRedirect.as_view(),
|
||||||
name='rrs_frontpage'),
|
name='rrs_frontpage'),
|
||||||
|
url(r'^maintplan/(?P<maintplan_name>.*)/$',
|
||||||
|
MaintenancePlanRedirect.as_view(),
|
||||||
|
name='rrs_maintplan'),
|
||||||
url(r'^recipes/(?P<maintplan_name>.*)/(?P<release_name>.*)/(?P<milestone_name>.*)/$',
|
url(r'^recipes/(?P<maintplan_name>.*)/(?P<release_name>.*)/(?P<milestone_name>.*)/$',
|
||||||
RecipeListView.as_view(
|
RecipeListView.as_view(
|
||||||
template_name='rrs/recipes.html'),
|
template_name='rrs/recipes.html'),
|
||||||
|
|
14
rrs/views.py
14
rrs/views.py
|
@ -32,6 +32,20 @@ class FrontPageRedirect(RedirectView):
|
||||||
raise Exception('No milestones defined for release %s' % release.name)
|
raise Exception('No milestones defined for release %s' % release.name)
|
||||||
return reverse('rrs_recipes', args=(maintplan.name, release.name, milestone.name))
|
return reverse('rrs_recipes', args=(maintplan.name, release.name, milestone.name))
|
||||||
|
|
||||||
|
class MaintenancePlanRedirect(RedirectView):
|
||||||
|
permanent = False
|
||||||
|
|
||||||
|
def get_redirect_url(self, maintplan_name):
|
||||||
|
maintplan = get_object_or_404(MaintenancePlan, name=maintplan_name)
|
||||||
|
release = Release.get_current(maintplan)
|
||||||
|
if not release:
|
||||||
|
raise Exception('No releases defined for maintenance plan %s' % maintplan.name)
|
||||||
|
milestone = Milestone.get_current(release)
|
||||||
|
if not milestone:
|
||||||
|
raise Exception('No milestones defined for release %s' % release.name)
|
||||||
|
return reverse('rrs_recipes', args=(maintplan.name, release.name, milestone.name))
|
||||||
|
|
||||||
|
|
||||||
def _check_url_params(upstream_status, maintainer_name):
|
def _check_url_params(upstream_status, maintainer_name):
|
||||||
get_object_or_404(Maintainer, name=maintainer_name)
|
get_object_or_404(Maintainer, name=maintainer_name)
|
||||||
|
|
||||||
|
|
|
@ -136,6 +136,17 @@
|
||||||
</ul>
|
</ul>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
{% if rrs_maintplans %}
|
||||||
|
<h3>{{ rrs_maintplans|pluralize:"Maintenance Plan,Maintenance Plans" }}</h3>
|
||||||
|
<ul>
|
||||||
|
{% for maintplan in rrs_maintplans %}
|
||||||
|
<li>
|
||||||
|
<a href="{% url 'rrs_maintplan' maintplan.name %}">{{ maintplan.name }}</a>
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
</div> <!-- end of span7 -->
|
</div> <!-- end of span7 -->
|
||||||
|
|
||||||
<div class="span4 pull-right description">
|
<div class="span4 pull-right description">
|
||||||
|
|
Loading…
Reference in New Issue
Block a user