pull: Remove duplicate '--dry-run' description.
[guix.git] / tests / guix-describe.sh
blobaf523f0a0be3632738b810f3a92d3661a2e91968
1 # GNU Guix --- Functional package management for GNU
2 # Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
4 # This file is part of GNU Guix.
6 # GNU Guix is free software; you can redistribute it and/or modify it
7 # under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or (at
9 # your option) any later version.
11 # GNU Guix is distributed in the hope that it will be useful, but
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
20 # Test 'guix describe'.
23 guix describe --version
25 tmpfile="t-guix-describe-$$"
26 trap "rm -f $tmpfile" EXIT
27 rm -f "$tmpfile"
29 if [ -d "$abs_top_srcdir/.git" ]
30 then
31 # Since we're in a Git checkout, we can at least check that these things
32 # work.
33 guix describe | grep -i "checkout"
34 if git --version > /dev/null 2>&1
35 then
36 result="`guix describe | grep commit: | cut -d : -f 2-`"
37 commit="`git log | head -1 | cut -c 7-`"
38 test "x$result" = "x$commit"
40 guix describe -f channels
41 case "`guix describe -f channels | grep url`" in
42 *"(url \"$abs_top_srcdir\")") true;;
43 *) false;;
44 esac
45 else
46 exit 77