diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2021-04-01 15:41:26 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2021-04-01 15:56:45 -0700 |
commit | fadfbfc99f0409eb9899c7494d17e15ff596542d (patch) | |
tree | 5c34fd977570dd12bb67df5bfcdba10299412512 /src/deployment.lisp | |
parent | 61a5fea1600969f404d9fcf0ba6a3fc0fdc4b5f7 (diff) | |
download | consfigurator-fadfbfc99f0409eb9899c7494d17e15ff596542d.tar.gz |
propagate :NO-CHANGE out of fork subdeployments
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src/deployment.lisp')
-rw-r--r-- | src/deployment.lisp | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/deployment.lisp b/src/deployment.lisp index 1937270..472ba4b 100644 --- a/src/deployment.lisp +++ b/src/deployment.lisp @@ -33,13 +33,16 @@ preprocessed." (connect (connections) (destructuring-bind ((type . args) . remaining) connections ;; implementations of ESTABLISH-CONNECTION which call - ;; CONTINUE-DEPLOY* or CONTINUE-DEPLOY*-PROGRAM return nil to us - (when-let ((*connection* - (apply #'establish-connection type remaining args))) - (if remaining - (connect remaining) - (apply-*host*-propspec)) - (connection-teardown *connection*))))) + ;; CONTINUE-DEPLOY* or CONTINUE-DEPLOY*-PROGRAM return nil to us, + ;; and possibly :NO-CHANGE as a second value + (multiple-value-bind (*connection* return) + (apply #'establish-connection type remaining args) + (if *connection* + (prog1 (if remaining + (connect remaining) + (apply-*host*-propspec)) + (connection-teardown *connection*)) + return))))) (let ((*host* (preprocess-host host))) (cond ((and connections (or *connection* (eq :local (caar connections)))) |