mirror of
git://git.yoctoproject.org/layerindex-web.git
synced 2025-07-19 20:59:01 +02:00
layerindex: add "No update" status to LayerItem
Add a status for a layer indicating it should not be updated. I don't expect this to be widely used (and is only settable from the admin interface) but would be useful if you have a legacy sub-layer that you want to prevent from being visible on certain branches - it will prevent the update script from doing anything with the layer and thus avoid branch records from being auto-created on branches where you've deleted it. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
This commit is contained in:
parent
2919424f89
commit
51614fe5a0
|
@ -179,7 +179,7 @@ class AdvancedRecipeSearchForm(forms.Form):
|
||||||
field = forms.ChoiceField(choices=FIELD_CHOICES)
|
field = forms.ChoiceField(choices=FIELD_CHOICES)
|
||||||
match_type = forms.ChoiceField(choices=MATCH_TYPE_CHOICES)
|
match_type = forms.ChoiceField(choices=MATCH_TYPE_CHOICES)
|
||||||
value = forms.CharField(max_length=255, required=False)
|
value = forms.CharField(max_length=255, required=False)
|
||||||
layer = forms.ModelChoiceField(queryset=LayerItem.objects.filter(classic=False).filter(status='P').order_by('name'), empty_label="(any)", required=False)
|
layer = forms.ModelChoiceField(queryset=LayerItem.objects.filter(classic=False).filter(status__in=['P', 'X']).order_by('name'), empty_label="(any)", required=False)
|
||||||
|
|
||||||
|
|
||||||
class RecipeChangesetForm(forms.ModelForm):
|
class RecipeChangesetForm(forms.ModelForm):
|
||||||
|
|
19
layerindex/migrations/0007_layeritem_status_noupdate.py
Normal file
19
layerindex/migrations/0007_layeritem_status_noupdate.py
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('layerindex', '0006_change_branch_meta'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='layeritem',
|
||||||
|
name='status',
|
||||||
|
field=models.CharField(default='N', choices=[('N', 'New'), ('P', 'Published'), ('X', 'No update')], max_length=1),
|
||||||
|
),
|
||||||
|
]
|
|
@ -65,6 +65,7 @@ class LayerItem(models.Model):
|
||||||
LAYER_STATUS_CHOICES = (
|
LAYER_STATUS_CHOICES = (
|
||||||
('N', 'New'),
|
('N', 'New'),
|
||||||
('P', 'Published'),
|
('P', 'Published'),
|
||||||
|
('X', 'No update'),
|
||||||
)
|
)
|
||||||
LAYER_TYPE_CHOICES = (
|
LAYER_TYPE_CHOICES = (
|
||||||
('A', 'Base'),
|
('A', 'Base'),
|
||||||
|
|
|
@ -22,7 +22,7 @@ class LayerItemSerializer(serializers.ModelSerializer):
|
||||||
model = LayerItem
|
model = LayerItem
|
||||||
|
|
||||||
class LayerItemViewSet(ParametricSearchableModelViewSet):
|
class LayerItemViewSet(ParametricSearchableModelViewSet):
|
||||||
queryset = LayerItem.objects.filter(status='P')
|
queryset = LayerItem.objects.filter(status__in=['P', 'X'])
|
||||||
serializer_class = LayerItemSerializer
|
serializer_class = LayerItemSerializer
|
||||||
|
|
||||||
class LayerBranchSerializer(serializers.ModelSerializer):
|
class LayerBranchSerializer(serializers.ModelSerializer):
|
||||||
|
@ -30,7 +30,7 @@ class LayerBranchSerializer(serializers.ModelSerializer):
|
||||||
model = LayerBranch
|
model = LayerBranch
|
||||||
|
|
||||||
class LayerBranchViewSet(ParametricSearchableModelViewSet):
|
class LayerBranchViewSet(ParametricSearchableModelViewSet):
|
||||||
queryset = LayerBranch.objects.filter(layer__status='P')
|
queryset = LayerBranch.objects.filter(layer__status__in=['P', 'X'])
|
||||||
serializer_class = LayerBranchSerializer
|
serializer_class = LayerBranchSerializer
|
||||||
|
|
||||||
class LayerDependencySerializer(serializers.ModelSerializer):
|
class LayerDependencySerializer(serializers.ModelSerializer):
|
||||||
|
@ -38,7 +38,7 @@ class LayerDependencySerializer(serializers.ModelSerializer):
|
||||||
model = LayerDependency
|
model = LayerDependency
|
||||||
|
|
||||||
class LayerDependencyViewSet(ParametricSearchableModelViewSet):
|
class LayerDependencyViewSet(ParametricSearchableModelViewSet):
|
||||||
queryset = LayerDependency.objects.filter(layerbranch__layer__status='P')
|
queryset = LayerDependency.objects.filter(layerbranch__layer__status__in=['P', 'X'])
|
||||||
serializer_class = LayerDependencySerializer
|
serializer_class = LayerDependencySerializer
|
||||||
|
|
||||||
class RecipeSerializer(serializers.ModelSerializer):
|
class RecipeSerializer(serializers.ModelSerializer):
|
||||||
|
|
|
@ -157,6 +157,7 @@ def main():
|
||||||
logger.error('No layers matching specified query "%s"' % options.layers)
|
logger.error('No layers matching specified query "%s"' % options.layers)
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
else:
|
else:
|
||||||
|
# We deliberately exclude status == 'X' ("no update") here
|
||||||
layerquery = LayerItem.objects.filter(classic=False).filter(status='P')
|
layerquery = LayerItem.objects.filter(classic=False).filter(status='P')
|
||||||
if layerquery.count() == 0:
|
if layerquery.count() == 0:
|
||||||
logger.info("No published layers to update")
|
logger.info("No published layers to update")
|
||||||
|
|
|
@ -279,7 +279,7 @@ class LayerListView(ListView):
|
||||||
|
|
||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
_check_url_branch(self.kwargs)
|
_check_url_branch(self.kwargs)
|
||||||
return LayerBranch.objects.filter(branch__name=self.kwargs['branch']).filter(layer__status='P').order_by('layer__layer_type', '-layer__index_preference', 'layer__name')
|
return LayerBranch.objects.filter(branch__name=self.kwargs['branch']).filter(layer__status__in=['P', 'X']).order_by('layer__layer_type', '-layer__index_preference', 'layer__name')
|
||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
context = super(LayerListView, self).get_context_data(**kwargs)
|
context = super(LayerListView, self).get_context_data(**kwargs)
|
||||||
|
@ -459,7 +459,7 @@ class DuplicatesView(TemplateView):
|
||||||
context['classes'] = self.get_classes(layer_ids)
|
context['classes'] = self.get_classes(layer_ids)
|
||||||
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
|
||||||
context['layers'] = LayerBranch.objects.filter(branch__name=self.kwargs['branch']).filter(layer__status='P').order_by( 'layer__name')
|
context['layers'] = LayerBranch.objects.filter(branch__name=self.kwargs['branch']).filter(layer__status__in=['P', 'X']).order_by( 'layer__name')
|
||||||
context['showlayers'] = layer_ids
|
context['showlayers'] = layer_ids
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user