diff --git a/scanpipe/migrations/0070_discoveredpackage_analysis_subproject.py b/scanpipe/migrations/0070_discoveredpackage_analysis_subproject.py new file mode 100644 index 000000000..270297251 --- /dev/null +++ b/scanpipe/migrations/0070_discoveredpackage_analysis_subproject.py @@ -0,0 +1,19 @@ +# Generated by Django 5.1.5 on 2025-03-03 06:53 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('scanpipe', '0069_project_purl'), + ] + + operations = [ + migrations.AddField( + model_name='discoveredpackage', + name='analysis_subproject', + field=models.OneToOneField(blank=True, editable=False, help_text='Sub-project dedicated to analyzing this package.', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='analyzed_package', to='scanpipe.project'), + ), + ] diff --git a/scanpipe/models.py b/scanpipe/models.py index 0461cc663..0f448c43f 100644 --- a/scanpipe/models.py +++ b/scanpipe/models.py @@ -3442,6 +3442,15 @@ class DiscoveredPackage( notes = models.TextField(blank=True) source_packages = models.JSONField(default=list, blank=True) tag = models.CharField(blank=True, max_length=50) + analysis_subproject = models.OneToOneField( + Project, + related_name="analyzed_package", + help_text=_("Sub-project dedicated to analyzing this package."), + on_delete=models.SET_NULL, + blank=True, + null=True, + editable=False, + ) objects = DiscoveredPackageQuerySet.as_manager() diff --git a/scanpipe/templates/scanpipe/package_list.html b/scanpipe/templates/scanpipe/package_list.html index ee415673f..5283e3677 100644 --- a/scanpipe/templates/scanpipe/package_list.html +++ b/scanpipe/templates/scanpipe/package_list.html @@ -22,14 +22,34 @@
{% for package in object_list %}