diff options
Diffstat (limited to 'src/deployment.lisp')
-rw-r--r-- | src/deployment.lisp | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/deployment.lisp b/src/deployment.lisp index 20a79ee..effb0e9 100644 --- a/src/deployment.lisp +++ b/src/deployment.lisp @@ -326,12 +326,9 @@ Connection attributes, by contrast, are propagated as usual." (setf (getf (slot-value host 'hostattrs) :data) nil) (setq host (preprocess-host host)) (doplist (k v (hostattrs host)) - (loop with root = (get-hostattrs k) - for cell on v until (eq cell root) - collect (car cell) into accum - finally (if (eql k :data) - (pushnew-hostattrs :data (nreverse accum)) - (push-hostattrs k (nreverse accum))))) + (case k + (:data (pushnew-hostattrs :data v)) + (t (setf (getf (slot-value *host* 'hostattrs) k) v)))) (dolist (system (propspec-systems (host-propspec host))) (pushnew system (slot-value (host-propspec *host*) 'systems))) (setf (getf properties :host) host))) |