--local-user=<keyid>
For the purpose of signing tags and tar files, use this
key (default: use the default e-mail address’ key).
+--unsigned Do not sign anything.
--staging-address=<address>
The staging location to upload release files to (default:
do_help=false
do_manual=false
+do_signed=true
tagkey=' -s'
gpgkey=
reviewers=
-l 'clean-worktree' \
-l 'branch-fmt:,tag-fmt:' \
-l 'reviewer:' \
- -l 'local-user:' \
+ -l 'local-user:,unsigned' \
-l 'staging-address:' \
-l 'no-upload,no-update' \
-l 'quiet,verbose,debug' \
;;
--local-user )
shift
+ do_signed=true
tagkey=" -u $1"
gpgkey=" -u $1"
shift
;;
+ --unsigned )
+ shift
+ do_signed=false
+ tagkey=" -a"
+ gpgkey=
+ ;;
--staging-address )
shift
staging_address="$1"
$VERBOSE "== Generating signatures: $tgzfile.asc $announce.asc"
rm -f "../$tgzfile.asc" "../$announce.asc"
$ECHO "Signing the release files. You may need to enter a pass phrase"
-gpg$gpgkey --use-agent -sba "../$tgzfile"
-gpg$gpgkey --use-agent -sta --clearsign "../$announce"
+if $do_signed; then
+ gpg$gpgkey --use-agent -sba "../$tgzfile"
+ gpg$gpgkey --use-agent -sta --clearsign "../$announce"
+fi
if ! $clean_worktree; then
# Push everything to the parent repo
git push --follow-tags parent HEAD
fi
-staging_files=( "$tgzfile" "$tgzfile.sha1" "$tgzfile.sha256"
- "$tgzfile.asc" "$announce.asc" )
+if $do_signed; then
+ staging_files=( "$tgzfile" "$tgzfile.sha1" "$tgzfile.sha256"
+ "$tgzfile.asc" "$announce.asc" )
+else
+ staging_files=( "$tgzfile" "$tgzfile.sha1" "$tgzfile.sha256" "$announce" )
+fi
$VERBOSE "== Generating metadata file: $metadata"
B<--branch-fmt>=I<fmt> |
B<--tag-fmt>=I<fmt> |
B<--local-user>=I<keyid> |
+B<--unsigned> |
B<--reviewer>=I<id> |
B<--staging-address>=I<address> |
B<--no-upload> |
If not given, then the default e-mail address' key is used.
+=item B<--unsigned>
+
+Do not sign the tarball or announcement file. This leaves it for other
+scripts to sign the files later.
+
=item B<--staging-address>=I<address>
The staging location that the release files are to be uploaded to.