mirror of
git://git.yoctoproject.org/layerindex-web.git
synced 2025-07-19 20:59:01 +02:00
rrs: duplicate releases from first plan when adding a new plan
It's a pain to have to add all the releases when adding a new maintenance plan. Since these are likely to be the same (or similar) for every plan, then duplicate them across from the first plan when you save a new one. Also add "default" milestones on the assumption that other layers probably won't want to use the 4-milestone split per release, but there do have to be some milestone records, so just create one milestone for each release. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
This commit is contained in:
parent
34466bac1d
commit
560628c0e5
17
rrs/admin.py
17
rrs/admin.py
|
@ -53,6 +53,23 @@ class MaintenancePlanAdmin(admin.ModelAdmin):
|
||||||
inlines = [
|
inlines = [
|
||||||
MaintenancePlanLayerBranchInline,
|
MaintenancePlanLayerBranchInline,
|
||||||
]
|
]
|
||||||
|
def save_model(self, request, obj, form, change):
|
||||||
|
# For new maintenance plans, copy releases from the first plan
|
||||||
|
if obj.pk is None:
|
||||||
|
copyfrom_mp = MaintenancePlan.objects.all().first()
|
||||||
|
else:
|
||||||
|
copyfrom_mp = None
|
||||||
|
super().save_model(request, obj, form, change)
|
||||||
|
if copyfrom_mp:
|
||||||
|
for release in copyfrom_mp.release_set.all():
|
||||||
|
release.pk = None
|
||||||
|
release.plan = obj
|
||||||
|
release.save()
|
||||||
|
milestone = Milestone(release=release)
|
||||||
|
milestone.name='Default'
|
||||||
|
milestone.start_date = release.start_date
|
||||||
|
milestone.end_date = release.end_date
|
||||||
|
milestone.save()
|
||||||
|
|
||||||
class ReleaseAdmin(admin.ModelAdmin):
|
class ReleaseAdmin(admin.ModelAdmin):
|
||||||
search_fields = ['name']
|
search_fields = ['name']
|
||||||
|
|
Loading…
Reference in New Issue
Block a user