diff options
author | Jelle van der Waa <jelle@archlinux.org> | 2020-05-23 01:23:55 +0200 |
---|---|---|
committer | Jelle van der Waa <jelle@archlinux.org> | 2020-05-31 21:14:53 +0200 |
commit | 5da8fa6ce1ae04302fca2efb3aa99c8e18f291fa (patch) | |
tree | 0e94ebd294effc4c23a47ca8cdac8826688c6622 | |
parent | 1c831f6b5afc6b29d869a4889519f368fc802a17 (diff) | |
download | archweb-5da8fa6ce1ae04302fca2efb3aa99c8e18f291fa.tar.gz archweb-5da8fa6ce1ae04302fca2efb3aa99c8e18f291fa.zip |
Add PGP key to the Release model
Add a pgp_key field to the Release model so we can display the PGP
fingerprint of the used PGP key on the download page.
Closes: #282
-rw-r--r-- | releng/migrations/0003_release_pgp_key.py | 19 | ||||
-rw-r--r-- | releng/models.py | 3 | ||||
-rw-r--r-- | templates/public/download.html | 2 | ||||
-rw-r--r-- | templates/releng/release_detail.html | 2 |
4 files changed, 26 insertions, 0 deletions
diff --git a/releng/migrations/0003_release_pgp_key.py b/releng/migrations/0003_release_pgp_key.py new file mode 100644 index 00000000..a211a798 --- /dev/null +++ b/releng/migrations/0003_release_pgp_key.py @@ -0,0 +1,19 @@ +# Generated by Django 3.0.6 on 2020-05-22 22:14 + +import devel.fields +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('releng', '0002_auto_20181216_1605'), + ] + + operations = [ + migrations.AddField( + model_name='release', + name='pgp_key', + field=devel.fields.PGPKeyField(blank=True, help_text='consists of 40 hex digits; use `gpg --fingerprint`', max_length=40, null=True, verbose_name='PGP key fingerprint'), + ), + ] diff --git a/releng/models.py b/releng/models.py index 60a70edc..aad75f11 100644 --- a/releng/models.py +++ b/releng/models.py @@ -11,6 +11,7 @@ from django.db.models.signals import pre_save from django.utils.safestring import mark_safe from main.utils import set_created_field, parse_markdown +from devel.fields import PGPKeyField class Release(models.Model): @@ -19,6 +20,8 @@ class Release(models.Model): kernel_version = models.CharField(max_length=50, blank=True) md5_sum = models.CharField('MD5 digest', max_length=32, blank=True) sha1_sum = models.CharField('SHA1 digest', max_length=40, blank=True) + pgp_key = PGPKeyField(max_length=40, verbose_name="PGP key fingerprint", null=True, blank=True, + help_text="consists of 40 hex digits; use `gpg --fingerprint`") created = models.DateTimeField(editable=False) last_modified = models.DateTimeField(editable=False) available = models.BooleanField(default=True) diff --git a/templates/public/download.html b/templates/public/download.html index 944fe96d..15c31a90 100644 --- a/templates/public/download.html +++ b/templates/public/download.html @@ -2,6 +2,7 @@ {% load cache %} {% load static %} {% load flags %} +{% load pgp %} {% block title %}Arch Linux - Downloads{% endblock %} @@ -98,6 +99,7 @@ <ul> <li><a href="https://www.archlinux.org/{{ release.iso_url }}.sig" title="PGP signature">PGP signature</a></li> + {% if release.pgp_key %}<li><strong>PGP fingerprint:</strong> {% pgp_key_link release.pgp_key %}</li>{% endif %} {% if release.md5_sum %}<li><strong>MD5:</strong> {{ release.md5_sum }}</li>{% endif %} {% if release.sha1_sum %}<li><strong>SHA1:</strong> {{ release.sha1_sum }}</li>{% endif %} </ul> diff --git a/templates/releng/release_detail.html b/templates/releng/release_detail.html index 11155c0c..2f81f416 100644 --- a/templates/releng/release_detail.html +++ b/templates/releng/release_detail.html @@ -1,5 +1,6 @@ {% extends "base.html" %} {% load static %} +{% load pgp %} {% block title %}Arch Linux - Release: {{ release.version }}{% endblock %} @@ -21,6 +22,7 @@ {% endif %} {% if release.md5_sum %}<li><strong>MD5:</strong> {{ release.md5_sum }}</li>{% endif %} {% if release.sha1_sum %}<li><strong>SHA1:</strong> {{ release.sha1_sum }}</li>{% endif %} + {% if release.pgp_key %}<li><strong>PGP fingerprint:</strong> {% pgp_key_link release.pgp_key %}</li>{% endif %} </ul> {% if release.info %} |