summaryrefslogtreecommitdiff
path: root/tests/guix-git-authenticate.sh
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2025-06-08 17:41:20 +0200
committerLudovic Courtès <ludo@gnu.org>2025-06-22 23:45:36 +0200
commit0ec5cab132599cf644f0697c5f189366c1ebc773 (patch)
treec3971f47bf91fca1bc132323f6e832fcc85b1f8a /tests/guix-git-authenticate.sh
parent56eb949f3b4d10c1d8738eae96ac247b74bf20b9 (diff)
git authenticate: Gracefully handle passing an annotated tag to ‘--end’.
Partly fixes <https://issues.guix.gnu.org/74583>. Previously, passing an annotated tag to ‘--end’, as can happen when ‘guix git authenticate’ is invoked by the pre-push hook when pushing tags, would lead to an error: guix git: error: Git error: the requested type does not match the type in the ODB * guix/scripts/git/authenticate.scm (ensure-commit-id): New procedure. (guix-git-authenticate): Use it. * tests/guix-git-authenticate.sh: Test with $v1_2_0_annotated_tag. Change-Id: I22e8eb665609522c80c1f0dcb9e77a46c23c0c3c
Diffstat (limited to 'tests/guix-git-authenticate.sh')
-rw-r--r--tests/guix-git-authenticate.sh9
1 files changed, 8 insertions, 1 deletions
diff --git a/tests/guix-git-authenticate.sh b/tests/guix-git-authenticate.sh
index 7b8951b9aaf..6cbb7b59c1f 100644
--- a/tests/guix-git-authenticate.sh
+++ b/tests/guix-git-authenticate.sh
@@ -1,5 +1,5 @@
# GNU Guix --- Functional package management for GNU
-# Copyright © 2020, 2022, 2024 Ludovic Courtès <ludo@gnu.org>
+# Copyright © 2020, 2022, 2024-2025 Ludovic Courtès <ludo@gnu.org>
#
# This file is part of GNU Guix.
#
@@ -53,6 +53,13 @@ guix git authenticate \
--cache-key="$cache_key" --stats \
--end="$v1_2_0_commit"
+# Likewise, but pass the OID of the annotated tag 'v1.2.0' instead of that of
+# the commit--this mimics what the pre-push hook gets when pushing tags.
+v1_2_0_annotated_tag="d5b556eef57321d0be89fdb07db447b2db2718ed"
+guix git authenticate \
+ --cache-key="$cache_key" --stats \
+ --end="$v1_2_0_annotated_tag"
+
rm "$XDG_CACHE_HOME/guix/authentication/$cache_key"
# Commit and signer of the 'v1.0.0' tag.