snapshot: support archive signatures
Read signatures from the notes refs refs/notes/signatures/$FORMAT where
FORMAT is one of our archive formats ("tar", "tar.gz", ...). The note
is expected to simply contain the signature content to be returned when
the snapshot "${filename}.asc" is requested, so the signature for
cgit-1.1.tar.xz can be stored against the v1.1 tag with:
git notes --ref=refs/notes/signatures/tar.xz add -C "$(
gpg --output - --armor --detach-sign cgit-1.1.tar.xz |
git hash-object -w --stdin
)" v1.1
and then downloaded by simply appending ".asc" to the archive URL.
Signed-off-by: John Keeping <john@keeping.me.uk>
Reviewed-by: Christian Hesse <mail@eworm.de>
This commit is contained in:
committed by
Jason A. Donenfeld
parent
71d14d9c98
commit
c712d5ac43
@@ -1133,6 +1133,13 @@ void cgit_print_snapshot_links(const struct cgit_repo *repo, const char *ref,
|
||||
strbuf_addstr(&filename, f->suffix);
|
||||
cgit_snapshot_link(filename.buf, NULL, NULL, NULL, NULL,
|
||||
filename.buf);
|
||||
if (cgit_snapshot_get_sig(ref, f)) {
|
||||
strbuf_addstr(&filename, ".asc");
|
||||
html(" (");
|
||||
cgit_snapshot_link("sig", NULL, NULL, NULL, NULL,
|
||||
filename.buf);
|
||||
html(")");
|
||||
}
|
||||
html(separator);
|
||||
}
|
||||
strbuf_release(&filename);
|
||||
|
||||
Reference in New Issue
Block a user