aboutsummaryrefslogtreecommitdiff
path: root/src/connection
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2021-09-21 20:24:40 -0700
committerSean Whitton <spwhitton@spwhitton.name>2021-11-08 16:18:13 -0700
commitad5cb4b69897d29414a7898443a5146bf0a60f34 (patch)
treed9a7102fbbf7910c87ae4109c7746ec2f6a874bb /src/connection
parent1e99ee6ff7f47db2052e226d7b071e31ff33b56c (diff)
downloadconsfigurator-ad5cb4b69897d29414a7898443a5146bf0a60f34.tar.gz
REHOME-CONNECTION: move call to UPLOAD-ALL-PREREQUISITE-DATA
It's the fact we're changing to a different home directory that's part of the same root filesystem, and with the same UID/GID ranges, that means we call UPLOAD-ALL-PREREQUISITE-DATA with this connection object. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src/connection')
-rw-r--r--src/connection/fork.lisp1
-rw-r--r--src/connection/rehome.lisp4
2 files changed, 4 insertions, 1 deletions
diff --git a/src/connection/fork.lisp b/src/connection/fork.lisp
index aa1626e..f55896d 100644
--- a/src/connection/fork.lisp
+++ b/src/connection/fork.lisp
@@ -26,7 +26,6 @@
Must not start up any threads."))
(defmethod continue-connection ((connection fork-connection) remaining)
- (upload-all-prerequisite-data connection)
(eval-in-grandchild `(post-fork ,connection)
`(continue-deploy* ,connection ',remaining) (out err exit)
(when-let ((lines (lines out)))
diff --git a/src/connection/rehome.lisp b/src/connection/rehome.lisp
index 5b57d5f..b8adb8f 100644
--- a/src/connection/rehome.lisp
+++ b/src/connection/rehome.lisp
@@ -26,6 +26,10 @@
(:documentation
"A connection which works by switching to a new HOME on the same host."))
+(defmethod continue-connection
+ :before ((connection rehome-connection) remaining)
+ (upload-all-prerequisite-data connection))
+
(defmethod connection-upload ((connection rehome-connection) (data file-data))
(with-slots (iden1 iden2 data-version) data
(let ((inside (data-pathname