git-annex/Remote
Joey Hess 4579dd6201
S3: Improve diagnostics when a remote is configured with exporttree and versioning, but no S3 version id has been recorded for a key.
When public access is used for the remote, it complained that the user
needed to set creds to use it, which was just wrong.

When creds were being used, it fell back from trying to use the version ID
to just accessing the key in the bucket, which was ok for non-export
remotes, but wrong for buckets.

In both cases, display a hopefully useful warning.

This should only come up when an existing S3 remote has been exported
to, and then later versioning was enabled.

Note that it would perhaps be possible to fall back from trying to use
retrieveKeyFile when it fails and instead use retrieveKeyFileFromExport,
which may work when S3 version ID is missing. But there are problems
with that approach; how to tell when retrieveKeyFile has failed due to this
rather than a network problem etc? Anyway, that approach would only work
until the file in the export got overwritten, and then it would no
longer be accessible. And with versioning enabled, the user wants old
versions of objects to remain accessible, so it seems better to warn
about the problem as soon as possible, so they can go back and add S3
version IDs.

This work is supported by the NIH-funded NICEMAN (ReproNim TR&D3) project.
2018-12-06 13:44:37 -04:00
..
Directory remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
External add GETINFO to external protocol (for ronnypfa) 2018-06-08 11:56:24 -04:00
Helper deMaybe credPairRemoteKey 2018-12-04 13:37:43 -04:00
Rsync Support exporttree=yes for rsync special remotes. 2018-02-28 13:36:20 -04:00
WebDAV webdav: Avoid unncessisarily creating the collection at the top of the repo 2017-10-11 11:10:33 -04:00
Adb.hs add Remote.readonly 2018-08-30 11:12:18 -04:00
BitTorrent.hs replace TORRENT by WITH_TORRENTPARSER 2018-11-27 12:29:25 -04:00
Bup.hs export appendonly support 2018-08-30 11:18:20 -04:00
Ddar.hs add Remote.readonly 2018-08-30 11:12:18 -04:00
Directory.hs add Remote.readonly 2018-08-30 11:12:18 -04:00
External.hs deMaybe credPairRemoteKey 2018-12-04 13:37:43 -04:00
GCrypt.hs add Remote.readonly 2018-08-30 11:12:18 -04:00
Git.hs catch lockContentForRemoval exception 2018-11-15 15:39:57 -04:00
Glacier.hs remote.name.annex-security-allow-unverified-downloads 2018-09-25 15:34:47 -04:00
Hook.hs remote.name.annex-security-allow-unverified-downloads 2018-09-25 15:34:47 -04:00
List.hs webapp: Fixed a crash when adding a git remote. 2018-10-29 16:01:08 -04:00
P2P.hs clean P2P protocol shutdown on EOF try 2 2018-09-25 16:49:59 -04:00
Rsync.hs centralized "yes"/"no" parsing 2018-10-10 11:14:27 -04:00
S3.hs S3: Improve diagnostics when a remote is configured with exporttree and versioning, but no S3 version id has been recorded for a key. 2018-12-06 13:44:37 -04:00
Tahoe.hs centralized "yes"/"no" parsing 2018-10-10 11:14:27 -04:00
Web.hs clean up url removal presence update 2018-10-04 17:35:49 -04:00
WebDAV.hs deMaybe credPairRemoteKey 2018-12-04 13:37:43 -04:00