summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-04-27 23:33:17 +0200
committerLudovic Courtès <ludo@gnu.org>2016-04-27 23:35:39 +0200
commita17417a812614eee2a7e39155712d7efe814f559 (patch)
tree4325ef45395add1f7c495996529fa2480ae18b93
parent151065d02a75dde396fd537f09fb89fa4b8821c2 (diff)
downloadguix-a17417a812614eee2a7e39155712d7efe814f559.tar.gz
challenge: Use exit code 2 when discrepancies are found.
Suggested by John Darrington <john@darrington.wattle.id.au>.

* guix/scripts/challenge.scm (guix-challenge): Exit with 2 when MISSING
is not empty.
* doc/guix.texi (Invoking guix challenge): Document it.
-rw-r--r--doc/guix.texi3
-rw-r--r--guix/scripts/challenge.scm4
2 files changed, 4 insertions, 3 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 6d64772262..0d72574619 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -5609,7 +5609,8 @@ guix challenge @var{options} [@var{packages}@dots{}]
 When a difference is found between the hash of a locally-built item and
 that of a server-provided substitute, or among substitutes provided by
 different servers, the command displays it as in the example above and
-exits with a non-zero return code.
+its exit code is 2 (other non-zero exit codes denote other kinds of
+errors.)
 
 The one option that matters is:
 
diff --git a/guix/scripts/challenge.scm b/guix/scripts/challenge.scm
index 0eb49da0cc..149647cfdf 100644
--- a/guix/scripts/challenge.scm
+++ b/guix/scripts/challenge.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -237,7 +237,7 @@ Challenge the substitutes for PACKAGE... provided by one or more servers.\n"))
                                   (issues (discrepancies items urls)))
                (for-each summarize-discrepancy issues)
                (unless (null? issues)
-                 (exit 1))
+                 (exit 2))
                (return (null? issues)))
              #:system system)))))))