summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@joeyh.name>2017-09-04 12:40:33 -0400
committerGravatar Joey Hess <joeyh@joeyh.name>2017-09-04 13:09:38 -0400
commit5ce97e8c736c121d53af23d7036264868a461db8 (patch)
tree1c8b180a503996be3b0ea63fc667bc564f2c3fcc /doc
parent2aea8192e1769c4acfbc130ba4d788abd5ee4539 (diff)
implement exporttree=yes configuration
* Only export to remotes that were initialized to support it. * Prevent storing key/value on export remotes. * Prevent enabling exporttree=yes and encryption in the same remote. SetupStage Enable was changed to take the old RemoteConfig. This allowed only setting exporttree when initially setting up a remote, and not configuring it later after stuff might already be stored in the remote. Went with =yes rather than =true for consistency with other parts of git-annex. Changed docs accordingly. This commit was supported by the NSF-funded DataLad project.
Diffstat (limited to 'doc')
-rw-r--r--doc/design/exporting_trees_to_special_remotes.mdwn10
-rw-r--r--doc/git-annex-export.mdwn2
-rw-r--r--doc/special_remotes/directory.mdwn2
-rw-r--r--doc/todo/export.mdwn7
4 files changed, 10 insertions, 11 deletions
diff --git a/doc/design/exporting_trees_to_special_remotes.mdwn b/doc/design/exporting_trees_to_special_remotes.mdwn
index 52a68c6b4..118f12978 100644
--- a/doc/design/exporting_trees_to_special_remotes.mdwn
+++ b/doc/design/exporting_trees_to_special_remotes.mdwn
@@ -15,13 +15,13 @@ when they want to export a tree. (It would also be possible to drop all content
from an existing special remote and reuse it, but there does not seem much
benefit in doing so.)
-Add a new `initremote` configuration `exporttree=true`, that cannot be
+Add a new `initremote` configuration `exporttree=yes`, that cannot be
changed by `enableremote`:
- git annex initremote myexport type=... exporttree=true
+ git annex initremote myexport type=... exporttree=yes
-It does not make sense to encrypt an export, so exporttree=true requires
-(and can even imply) encryption=false.
+It does not make sense to encrypt an export, so exporttree=yes requires
+encryption=none.
Note that the particular tree to export is not specified yet. This is
because the tree that is exported to a special remote may change.
@@ -137,7 +137,7 @@ key/value stores. The content of a file can change, and if multiple
repositories can export a special remote, they can be out of sync about
what files are exported to it.
-Possible solution: Make exporttree=true cause the special remote to
+Possible solution: Make exporttree=yes cause the special remote to
be untrusted, and rely on annex.verify to catch cases where the content
of a file on a special remote has changed. This would work well enough
except for when the WORM or URL backend is used. So, prevent the user
diff --git a/doc/git-annex-export.mdwn b/doc/git-annex-export.mdwn
index 96a09dc9b..abe00f09b 100644
--- a/doc/git-annex-export.mdwn
+++ b/doc/git-annex-export.mdwn
@@ -15,7 +15,7 @@ keys. That is great for data storage, but your filenames are obscured.
Exporting replicates the tree to the special remote as-is.
Mixing key/value and exports in the same remote would be a mess and so is
-not allowed. So, you have to configure a remote with `exporttree=true`
+not allowed. So, you have to configure a remote with `exporttree=yes`
when initially setting it up with [[git-annex-initremote]](1).
Repeated exports are done efficiently, by diffing the old and new tree,
diff --git a/doc/special_remotes/directory.mdwn b/doc/special_remotes/directory.mdwn
index e3f7f1e45..70610c66d 100644
--- a/doc/special_remotes/directory.mdwn
+++ b/doc/special_remotes/directory.mdwn
@@ -31,7 +31,7 @@ remote:
Do not use for new remotes. It is not safe to change the chunksize
setting of an existing remote.
-* `exporttree` - Set to "true" to make this special remote usable
+* `exporttree` - Set to "yes" to make this special remote usable
by [[git-annex-export]]. It will not be usable as a general-purpose
special remote.
diff --git a/doc/todo/export.mdwn b/doc/todo/export.mdwn
index 914febe34..828e1c55b 100644
--- a/doc/todo/export.mdwn
+++ b/doc/todo/export.mdwn
@@ -17,12 +17,9 @@ there need to be a new interface in supported remotes?
Work is in progress. Todo list:
-* Only export to remotes that were initialized to support it.
-* Prevent using export remotes for key/value storage.
* Use retrieveExport when getting from export remotes.
+ (Needs a map from key to ExportLocation)
* Efficient handling of renames.
-* Support export to aditional special remotes (S3 etc)
-* Support export to external special remotes.
* If the same content is present in two different files, export
location tracking can be messed up.
@@ -33,3 +30,5 @@ Work is in progress. Todo list:
And, once one of the files is uploaded, the location log will
say the content is present, so the pass over the tree won't try to
upload the other file. (See design for a fix for this.)
+* Support export to aditional special remotes (S3 etc)
+* Support export to external special remotes.