Skip to content

Commit ad8ca9b

Browse files
authored
Merge pull request #7 from psf/finish_migration_to_pull_number
Finish migration from ref -> pull_number for tracking PendingSignatures
2 parents fe291f1 + 4bc7a12 commit ad8ca9b

File tree

5 files changed

+43
-9
lines changed

5 files changed

+43
-9
lines changed

cla/admin.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,12 +76,11 @@ def has_delete_permission(self, request, obj=None):
7676

7777

7878
class PendingSignatureAdmin(admin.ModelAdmin):
79-
list_display = ["email_address", "agreement", "get_repository_display"]
79+
list_display = ["email_address", "agreement", "get_pr_display"]
8080
readonly_fields = [
8181
"agreement",
82-
"get_repository_display",
82+
"get_pr_display",
8383
"github_repository_id",
84-
"ref",
8584
"pull_number",
8685
"email_address",
8786
"normalized_email",
@@ -91,9 +90,10 @@ class PendingSignatureAdmin(admin.ModelAdmin):
9190
def normalized_email(self, obj):
9291
return obj.normalized_email
9392

94-
def get_repository_display(self, obj=None):
93+
def get_pr_display(self, obj=None):
9594
if obj:
96-
return Repository.objects.get(repository_id=obj.github_repository_id)
95+
repository = Repository.objects.get(repository_id=obj.github_repository_id)
96+
return f"{repository.full_name} #{obj.pull_number}"
9797
return None
9898

9999

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Generated by Django 5.2 on 2025-04-18 12:07
2+
3+
from django.db import migrations
4+
5+
6+
class Migration(migrations.Migration):
7+
8+
dependencies = [
9+
("cla", "0004_pendingsignature_pull_number"),
10+
]
11+
12+
operations = [
13+
migrations.RemoveField(
14+
model_name="pendingsignature",
15+
name="ref",
16+
),
17+
]
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Generated by Django 5.2 on 2025-04-18 12:08
2+
3+
from django.db import migrations, models
4+
5+
6+
class Migration(migrations.Migration):
7+
8+
dependencies = [
9+
("cla", "0005_remove_pendingsignature_ref"),
10+
]
11+
12+
operations = [
13+
migrations.AlterField(
14+
model_name="pendingsignature",
15+
name="pull_number",
16+
field=models.IntegerField(default=-1),
17+
preserve_default=False,
18+
),
19+
]

cla/models.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,8 +109,7 @@ class PendingSignature(models.Model):
109109

110110
agreement = models.ForeignKey(Agreement, on_delete=models.PROTECT)
111111
github_repository_id = models.IntegerField()
112-
ref = models.CharField(max_length=512)
113-
pull_number = models.IntegerField(null=True)
112+
pull_number = models.IntegerField()
114113
email_address = models.EmailField(max_length=512)
115114
objects = PendingSignatureManager()
116115

cla/tasks.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,8 +143,7 @@ async def check_pull_request(
143143
agreement=agreement,
144144
github_repository_id=target_repository_id,
145145
email_address=author.email,
146-
ref=pull_request_head_sha,
147-
defaults={"pull_number": pull_request_number},
146+
pull_number=pull_request_number,
148147
)
149148
needs_signing.add(author)
150149
elif signature.github_id is None or signature.github_node_id is None:

0 commit comments

Comments
 (0)