Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for OVH Public Cloud Archives #11748

Open
cyberduck opened this issue Aug 2, 2021 · 6 comments
Open

Support for OVH Public Cloud Archives #11748

cyberduck opened this issue Aug 2, 2021 · 6 comments
Labels
core feature openstack OpenStack Swift Protocol Implementation

Comments

@cyberduck
Copy link
Collaborator

3a2020d created the issue

Would it be possible to get support for OVH cloud archive (like glacier from AWS)?

Public Cloud Archive is a cold storage offer designed to host large volumes of data without any size limit at a very attractive price. Intended for data that is not accessed often, a request must be made in advance and there is a delay prior to recovering data. The time delay will vary depending on the age of data and the frequency of data access.

@VictorHachard
Copy link

@dkocher, I opened this issue, is there anything new, is there a technical problem? Can I help code this feature?

@dkocher dkocher added the openstack OpenStack Swift Protocol Implementation label May 6, 2022
@dkocher
Copy link
Contributor

dkocher commented May 6, 2022

@dkocher, I opened this issue, is there anything new, is there a technical problem? Can I help code this feature?

I haven't looked into this but according to the feature page you should be able to connect using either OpenStack Swift or SFTP.

The storage solution used in Cloud Archive clusters is OpenStack Swift. This is a standard API that can be used directly by conventional tools. In addition to access via the Swift API, you can use your favoured tools, such as SFTP, SCP and rsync, for data transfer.

@VictorHachard
Copy link

VictorHachard commented May 6, 2022

Hi, I can connect with the OpenStack Swift k3 and the upload work like a charm, but there is no defreezing support. So when you want to download something, there is an error message. In reality, when clicking on 'download' cyberduck request the defreezing process (I can see that in the OVH PCA interface). And I know 10 m later I can download the file. The thing you can do to improve cyberduck is to handle this error message (I haven't found the availability date in this error message, and there is certainly an HTTP request to know the availability date).

167098061-6aba6767-a435-446d-8243-4215e775f4f4

10m later.

167099828-92d045e9-0060-4738-aa08-11d75be3d3f1

If you have any questions or if you need help with this subject fell free to ask.

@dkocher
Copy link
Contributor

dkocher commented May 6, 2022

Contributions are certainly welcome. One would have to implement the Restore1 interface.

Footnotes

  1. https://github.com/iterate-ch/cyberduck/blob/fa0aa0d5d7b07ec09a4c328b2c0cf9a56bf01c4d/core/src/main/java/ch/cyberduck/core/features/Restore.java

@VictorHachard
Copy link

I found an explanation for the error 429 -> https://docs.ovh.com/gb/en/storage/pca/unlock/

So the solution in the implementation of the Restore interface is to check the status in the isResorable function to have the sealed response. For the restore function is to try to download the file and wait for the unsealing process to end.

In the coming week I will try to test and implement this.

@dkocher
Copy link
Contributor

dkocher commented May 6, 2022

I found an explanation for the error 429 -> https://docs.ovh.com/gb/en/storage/pca/unlock/

So the solution in the implementation of the Restore interface is to check the status in the isResorable function to have the sealed response. For the restore function is to try to download the file and wait for the unsealing process to end.

In the coming week I will try to test and implement this.

The function isRestorable should be able to determine statically from the PathAttributes in Path determining if an object is archived. It cannot execute a long running remote action as it does not declare a BackgroundException in the method declaration. In Amazon S3 this can be determined by the storage class set on the object.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core feature openstack OpenStack Swift Protocol Implementation
Projects
None yet
Development

No branches or pull requests

3 participants