Skip to content

Commit 26cfb22

Browse files
Implement commit model and migration
Signed-off-by: JafarAkhondali <jafar.akhoondali@gmail.com>
1 parent ff95e09 commit 26cfb22

2 files changed

Lines changed: 75 additions & 0 deletions

File tree

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# Generated by Django 4.1.7 on 2023-07-05 15:01
2+
3+
from django.db import migrations, models
4+
import django.db.models.deletion
5+
6+
7+
class Migration(migrations.Migration):
8+
9+
dependencies = [
10+
("vulnerabilities", "0039_alter_vulnerabilityseverity_scoring_system"),
11+
]
12+
13+
operations = [
14+
migrations.CreateModel(
15+
name="Commit",
16+
fields=[
17+
(
18+
"id",
19+
models.AutoField(
20+
auto_created=True, primary_key=True, serialize=False, verbose_name="ID"
21+
),
22+
),
23+
(
24+
"hash",
25+
models.CharField(blank=True, help_text="Hash of the commit", max_length=1024),
26+
),
27+
(
28+
"chain_urls",
29+
models.JSONField(
30+
blank=True, default=list, help_text="List of URLS used to reach the commit"
31+
),
32+
),
33+
(
34+
"reference",
35+
models.OneToOneField(
36+
on_delete=django.db.models.deletion.CASCADE,
37+
to="vulnerabilities.vulnerabilityreference",
38+
),
39+
),
40+
],
41+
options={
42+
"ordering": ["reference_id"],
43+
},
44+
),
45+
]

vulnerabilities/models.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -886,3 +886,33 @@ class ApiUser(UserModel):
886886

887887
class Meta:
888888
proxy = True
889+
890+
891+
class Commit(models.Model):
892+
"""
893+
Reference to a commit(s) that fixed the vulnerability
894+
"""
895+
896+
reference = models.OneToOneField(
897+
VulnerabilityReference,
898+
on_delete=models.CASCADE,
899+
)
900+
901+
hash = models.CharField(
902+
max_length=1024,
903+
help_text="Hash of the commit",
904+
blank=True,
905+
)
906+
907+
chain_urls = models.JSONField(
908+
default=list,
909+
help_text="List of URLS used to reach the commit",
910+
blank = True,
911+
)
912+
913+
class Meta:
914+
ordering = ["reference_id"]
915+
916+
def __str__(self):
917+
reference_id = f" {self.reference_id}" if self.reference_id else ""
918+
return f"{self.url}{reference_id}"

0 commit comments

Comments
 (0)