aboutsummaryrefslogtreecommitdiff
path: root/doc/ideas.rst
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2021-03-26 14:48:37 -0700
committerSean Whitton <spwhitton@spwhitton.name>2021-03-27 14:29:20 -0700
commitb25ded67d9e9147922f827e8ca0620a79e0d2140 (patch)
tree228c4c2e3e30a022163de0f3f2c261401dd7a60b /doc/ideas.rst
parent856d654f7cff0e2be1feea155303486b18cc8e3f (diff)
downloadconsfigurator-b25ded67d9e9147922f827e8ca0620a79e0d2140.tar.gz
rework uploading data to be in terms of CONNECTION-UPLOAD
Incremental updates of items of prerequisite data was not implemented, so the previous meaning of CONNECTION-UPLOAD was not achieving much. This simplifies the core implementation, should still allow connection types to implement the method to provide optimisations, and provides a way to implement copying items of prerequisite data into chroots. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'doc/ideas.rst')
-rw-r--r--doc/ideas.rst8
1 files changed, 8 insertions, 0 deletions
diff --git a/doc/ideas.rst b/doc/ideas.rst
index aadba1d..d32ffed 100644
--- a/doc/ideas.rst
+++ b/doc/ideas.rst
@@ -24,6 +24,14 @@ Connections
then we can have more specific connection types which take other arguments
and construct the full command.
+- It might be possible to write an implementation of CONNECTION-UPLOAD for
+ SSH-CONNECTION which can optimise a common case. If it can see that it is
+ the only item in the connection chain, and there is an old version of an
+ item of prerequisite data to upload already on the remote side, it can move
+ that old version to a temporary name, rsync the new version directly to the
+ temporary name so that rsync can do an incremental update, and then rename
+ the file to the new version.
+
Data sources
------------