guix gc: Add '--list-failures' and '--clear-failures'.
Suggested by Mark H Weaver <mhw@netris.org>. * guix/scripts/gc.scm (show-help, %options): Add --list-failures and --clear-failures. (guix-gc): Honor them. * doc/guix.texi (Invoking guix gc): Document them. (Invoking guix-daemon): Mention them.
This commit is contained in:
parent
16748d8015
commit
30d9aa5422
|
@ -814,6 +814,11 @@ builds to other machines (@pxref{Daemon Offload Setup}).
|
|||
@item --cache-failures
|
||||
Cache build failures. By default, only successful builds are cached.
|
||||
|
||||
When this option is used, @command{guix gc --list-failures} can be used
|
||||
to query the set of store items marked as failed; @command{guix gc
|
||||
--clear-failures} removes store items from the set of cached failures.
|
||||
@xref{Invoking guix gc}.
|
||||
|
||||
@item --cores=@var{n}
|
||||
@itemx -c @var{n}
|
||||
Use @var{n} CPU cores to build each derivation; @code{0} means as many
|
||||
|
@ -1674,6 +1679,19 @@ Attempt to delete all the store files and directories specified as
|
|||
arguments. This fails if some of the files are not in the store, or if
|
||||
they are still live.
|
||||
|
||||
@item --list-failures
|
||||
List store items corresponding to cached build failures.
|
||||
|
||||
This prints nothing unless the daemon was started with
|
||||
@option{--cache-failures} (@pxref{Invoking guix-daemon,
|
||||
@option{--cache-failures}}).
|
||||
|
||||
@item --clear-failures
|
||||
Remove the specified store items from the failed-build cache.
|
||||
|
||||
Again, this option only makes sense when the daemon is started with
|
||||
@option{--cache-failures}. Otherwise, it does nothing.
|
||||
|
||||
@item --list-dead
|
||||
Show the list of dead files and directories still present in the
|
||||
store---i.e., files and directories no longer reachable from any root.
|
||||
|
|
|
@ -62,6 +62,10 @@ Invoke the garbage collector.\n"))
|
|||
--verify[=OPTS] verify the integrity of the store; OPTS is a
|
||||
comma-separated combination of 'repair' and
|
||||
'contents'"))
|
||||
(display (_ "
|
||||
--list-failures list cached build failures"))
|
||||
(display (_ "
|
||||
--clear-failures remove PATHS from the set of cached failures"))
|
||||
(newline)
|
||||
(display (_ "
|
||||
-h, --help display this help and exit"))
|
||||
|
@ -130,6 +134,14 @@ Invoke the garbage collector.\n"))
|
|||
(option '("referrers") #f #f
|
||||
(lambda (opt name arg result)
|
||||
(alist-cons 'action 'list-referrers
|
||||
(alist-delete 'action result))))
|
||||
(option '("list-failures") #f #f
|
||||
(lambda (opt name arg result)
|
||||
(alist-cons 'action 'list-failures
|
||||
(alist-delete 'action result))))
|
||||
(option '("clear-failures") #f #f
|
||||
(lambda (opt name arg result)
|
||||
(alist-cons 'action 'clear-failures
|
||||
(alist-delete 'action result))))))
|
||||
|
||||
|
||||
|
@ -200,6 +212,11 @@ Invoke the garbage collector.\n"))
|
|||
(verify-store store
|
||||
#:check-contents? (memq 'contents options)
|
||||
#:repair? (memq 'repair options)))))
|
||||
((list-failures)
|
||||
(for-each (cut simple-format #t "~a~%" <>)
|
||||
(query-failed-paths store)))
|
||||
((clear-failures)
|
||||
(clear-failed-paths store (map direct-store-path paths)))
|
||||
((list-dead)
|
||||
(for-each (cut simple-format #t "~a~%" <>)
|
||||
(dead-paths store)))
|
||||
|
|
Loading…
Reference in New Issue