diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2022-04-02 15:01:04 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2022-04-02 15:01:04 -0700 |
commit | c6f476ad552c66d75d9c7238459490b9a985bd7c (patch) | |
tree | 481534c0f2dddaafcb58bfe9352f929fbaeffa2a /src/propspec.lisp | |
parent | 805c59aeb5a65aa2b05ae177acbd141d517e4d06 (diff) | |
download | consfigurator-c6f476ad552c66d75d9c7238459490b9a985bd7c.tar.gz |
IN-CONSFIG: use &rest
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src/propspec.lisp')
-rw-r--r-- | src/propspec.lisp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/propspec.lisp b/src/propspec.lisp index b876830..055ca18 100644 --- a/src/propspec.lisp +++ b/src/propspec.lisp @@ -106,25 +106,23 @@ manual." (if reconstruct (cons 'list walked) walked))))) (walk expanded)))) -(defmacro in-consfig (systems) - "Sets the variable *CONSFIG* in the current package to SYSTEMS, or (SYSTEMS) -if SYSTEMS is an atom. Used at the top of your consfig, right after IN-PACKAGE. +(defmacro in-consfig (&rest systems) + "Sets the variable *CONSFIG* in the current package to SYSTEMS. +Used at the top of your consfig, right after IN-PACKAGE. This is used to record a list of the names of the ASDF systems in which you define your hosts, site-specific properties and deployments. These systems should depend on the \"consfigurator\" system. SYSTEMS should satisfy the following condition: in normal usage of -Consfigurator, evaluating -(mapc #'asdf:load-system (if (atom SYSTEMS) (list SYSTEMS) SYSTEMS) should be +Consfigurator, evaluating (mapc #'asdf:load-system SYSTEMS) should be sufficient to define all the properties you intend to apply to hosts and property combinators you intend to use in specifying propspecs. Consfigurator uses this information when starting up remote Lisp images to effect deployments: it sends over the ASDF systems specified by SYSTEMS." (when (null systems) - (simple-program-error "Cannot pass NIL to IN-CONSFIG.")) - (setq systems (ensure-cons systems)) + (simple-program-error "Cannot pass no arguments to IN-CONSFIG.")) (let ((sym (intern "*CONSFIG*"))) `(eval-when (:compile-toplevel :load-toplevel :execute) (defparameter ,sym ',systems |