You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
USe Case
S3 credentials are restricted to a specific prefix (not root) "XYZ/".
Cyberduck is configured as landing path in the bookmark under "More Options/Path"
-Expected*: Cyberduck connects and displays the content of an empty folder
-Issue*
Attempt to login when there's no file with that prefix (empty prefix "folder") causes error "Failure to read attributes of ".
When there is no file with the prefix, the "folder" itself is eventually deleted by S3 (there are no actual s3 folders) and files under the prefix will eventually expire according to the lifecycle policy.
We explicitly fail when attempting to list a prefix with a non existent placeholder file for the parent path and no key found under this prefix. This is by design to make this work as a filesystem in Mountain Duck when we want to fail when attempting to read directory contents for arbitrary prefixes.
You can workaround this by making sure you always have at least one object under the prefix specified as the default path. As of 7c7b95c.
You can workaround this by making sure you always have at least one object under the prefix specified as the default path."''
Sounds a bit hacky, especially since lifecycle rules will cause the files to be deleted eventually.
This is by design to make this work as a filesystem in Mountain Duck when we want to fail when attempting to read directory contents for arbitrary prefixes."''
I'm not aware of Mountain Duck, but shouldn't Cyberduck keep returning the empty list as it used to, letting Mountain Duck fail on empty payload if it needs to?
It's odd that a feature on a new product introduces a breaking change on an existing product that should be unrelated.
Anyway, this issue has been quickly dismissed as "wontfix", so we can only tell the users who reported it to stick to aws cli or aws sdk.
Another workaround might be to make sure the prefix placeholder always exists and is excluded from the lifecycle policy. The implementation is shared among Cyberduck and Mountain Duck and we also want the Go → Go to Folder… command in Cyberduck to fail for prefixes with no keys.
USe Case
S3 credentials are restricted to a specific prefix (not root) "XYZ/".
Cyberduck is configured as landing path in the bookmark under "More Options/Path"
-Expected*: Cyberduck connects and displays the content of an empty folder
-Issue*
Attempt to login when there's no file with that prefix (empty prefix "folder") causes error "Failure to read attributes of ".
When there is no file with the prefix, the "folder" itself is eventually deleted by S3 (there are no actual s3 folders) and files under the prefix will eventually expire according to the lifecycle policy.
"Details"
Logs tailed via:
Show a failed HEAD call to the prefix (as expected)
Followed by a succeessful GET
-Notes*
aws s3 ls XXXXXX
returns a successful response with empty payloadAttachments
cyberduck_7.10.0_err_empty_prefix_sanitized.log
(11.2 KiB)The text was updated successfully, but these errors were encountered: