Skip to content

Commit 5a5efc9

Browse files
committed
Meta/RelBuild: use gpg agent
With kup, the maintainer needs to sign multiple files. Start gpg agent and use it for a short while.
1 parent bef3571 commit 5a5efc9

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

RelBuild

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
#!/bin/sh
22

3+
j="-j 8"
34
version=$(git describe --exact) &&
45
label=$(echo "$version" | sed -e 's|^v||') &&
56
version=$(echo "$label" | sed -e 's|-|.|g') || exit
67

7-
make clean && make dist &&
8+
make clean && make $j dist &&
89

910
ASCIIDOC_NO_ROFF=YesPlease \
1011
ASCIIDOC8=YesPlease \
1112
MAN_BASE_URL="git-htmldocs/" \
12-
make dist-doc || exit
13-
13+
make $j dist-doc || exit
1414
# The above used to be
1515
# MAN_BASE_URL="http://www.kernel.org/pub/software/scm/git/docs/"
1616

@@ -25,13 +25,23 @@ do
2525
test -f $file || exit
2626
done
2727

28-
sha1sum $files | gpg --clearsign >git-$version.sign
28+
# Use agent
29+
GPG_TTY=$(tty) &&
30+
export GPG_TTY &&
31+
eval $(gpg-agent --daemon) &&
32+
GPG_AGENT_PID=$(expr "$GPG_AGENT_INFO" : ".*:\([1-9][0-9]*\):[1-9][0-9]*$") &&
33+
trap 'kill -0 $GPG_AGENT_PID && kill $GPG_AGENT_PID' 0 1 2 3 15 &&
34+
kill -0 "$GPG_AGENT_PID" &&
35+
gpg="gpg --use-agent" || exit
36+
37+
sha1sum $files | $gpg --clearsign >git-$version.sign || exit
2938

3039
for file in $files
3140
do
3241
gzip -dc <"$file" >"${file%.gz}" &&
33-
gpg -b "${file%.gz}" &&
42+
$gpg -b "${file%.gz}" &&
3443
rm "${file%.gz}" || exit
3544
done
3645

46+
kill $GPG_AGENT_PID
3747
ls -l git-$version.sign $files git*-$version.tar.sig

0 commit comments

Comments
 (0)