Add Akamai Netstorage as a new backend.

This commit is contained in:
Nil Alexandrov 2021-10-14 18:01:46 -04:00 committed by Nick Craig-Wood
parent 47f9ab2f56
commit 65652f7a75
12 changed files with 1305 additions and 0 deletions

View File

@ -21,6 +21,7 @@ Rclone *("rsync for cloud storage")* is a command-line program to sync files and
## Storage providers ## Storage providers
* 1Fichier [:page_facing_up:](https://rclone.org/fichier/) * 1Fichier [:page_facing_up:](https://rclone.org/fichier/)
* Akamai Netstorage [:page_facing_up:](https://rclone.org/netstorage/)
* Alibaba Cloud (Aliyun) Object Storage System (OSS) [:page_facing_up:](https://rclone.org/s3/#alibaba-oss) * Alibaba Cloud (Aliyun) Object Storage System (OSS) [:page_facing_up:](https://rclone.org/s3/#alibaba-oss)
* Amazon Drive [:page_facing_up:](https://rclone.org/amazonclouddrive/) ([See note](https://rclone.org/amazonclouddrive/#status)) * Amazon Drive [:page_facing_up:](https://rclone.org/amazonclouddrive/) ([See note](https://rclone.org/amazonclouddrive/#status))
* Amazon S3 [:page_facing_up:](https://rclone.org/s3/) * Amazon S3 [:page_facing_up:](https://rclone.org/s3/)

View File

@ -28,6 +28,7 @@ import (
_ "github.com/rclone/rclone/backend/mailru" _ "github.com/rclone/rclone/backend/mailru"
_ "github.com/rclone/rclone/backend/mega" _ "github.com/rclone/rclone/backend/mega"
_ "github.com/rclone/rclone/backend/memory" _ "github.com/rclone/rclone/backend/memory"
_ "github.com/rclone/rclone/backend/netstorage"
_ "github.com/rclone/rclone/backend/onedrive" _ "github.com/rclone/rclone/backend/onedrive"
_ "github.com/rclone/rclone/backend/opendrive" _ "github.com/rclone/rclone/backend/opendrive"
_ "github.com/rclone/rclone/backend/pcloud" _ "github.com/rclone/rclone/backend/pcloud"

1277
backend/netstorage/netstorage.go Executable file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,16 @@
package netstorage_test
import (
"testing"
"github.com/rclone/rclone/backend/netstorage"
"github.com/rclone/rclone/fstest/fstests"
)
// TestIntegration runs integration tests against the remote
func TestIntegration(t *testing.T) {
fstests.Run(t, &fstests.Opt{
RemoteName: "TestnStorage:",
NilObject: (*netstorage.Object)(nil),
})
}

View File

@ -52,6 +52,7 @@ docs = [
"mailru.md", "mailru.md",
"mega.md", "mega.md",
"memory.md", "memory.md",
"netstorage.md",
"azureblob.md", "azureblob.md",
"onedrive.md", "onedrive.md",
"opendrive.md", "opendrive.md",

View File

@ -16,6 +16,7 @@ TestFichier:
TestFTP: TestFTP:
TestGoogleCloudStorage: TestGoogleCloudStorage:
TestHubic: TestHubic:
TestNetStorage:
TestOneDrive: TestOneDrive:
TestPcloud: TestPcloud:
TestQingStor: TestQingStor:

View File

@ -8,6 +8,7 @@ exec rclone --check-normalization=true --check-control=true --check-length=true
TestDrive:testInfo \ TestDrive:testInfo \
TestDropbox:testInfo \ TestDropbox:testInfo \
TestGoogleCloudStorage:rclone-testinfo \ TestGoogleCloudStorage:rclone-testinfo \
TestnStorage:testInfo \
TestOneDrive:testInfo \ TestOneDrive:testInfo \
TestS3:rclone-testinfo \ TestS3:rclone-testinfo \
TestSftp:testInfo \ TestSftp:testInfo \

View File

@ -105,6 +105,7 @@ WebDAV or S3, that work out of the box.)
{{< provider_list >}} {{< provider_list >}}
{{< provider name="1Fichier" home="https://1fichier.com/" config="/fichier/" start="true">}} {{< provider name="1Fichier" home="https://1fichier.com/" config="/fichier/" start="true">}}
{{< provider name="Akamai Netstorage" home="https://www.akamai.com/us/en/products/media-delivery/netstorage.jsp" config="/netstorage/" >}}
{{< provider name="Alibaba Cloud (Aliyun) Object Storage System (OSS)" home="https://www.alibabacloud.com/product/oss/" config="/s3/#alibaba-oss" >}} {{< provider name="Alibaba Cloud (Aliyun) Object Storage System (OSS)" home="https://www.alibabacloud.com/product/oss/" config="/s3/#alibaba-oss" >}}
{{< provider name="Amazon Drive" home="https://www.amazon.com/clouddrive" config="/amazonclouddrive/" note="#status">}} {{< provider name="Amazon Drive" home="https://www.amazon.com/clouddrive" config="/amazonclouddrive/" note="#status">}}
{{< provider name="Amazon S3" home="https://aws.amazon.com/s3/" config="/s3/" >}} {{< provider name="Amazon S3" home="https://aws.amazon.com/s3/" config="/s3/" >}}

View File

@ -28,6 +28,7 @@ option:
See the following for detailed instructions for See the following for detailed instructions for
* [1Fichier](/fichier/) * [1Fichier](/fichier/)
* [Akamai Netstorage](/netstorage/)
* [Alias](/alias/) * [Alias](/alias/)
* [Amazon Drive](/amazonclouddrive/) * [Amazon Drive](/amazonclouddrive/)
* [Amazon S3](/s3/) * [Amazon S3](/s3/)

View File

@ -17,6 +17,7 @@ Here is an overview of the major features of each cloud storage system.
| Name | Hash | ModTime | Case Insensitive | Duplicate Files | MIME Type | | Name | Hash | ModTime | Case Insensitive | Duplicate Files | MIME Type |
| ---------------------------- |:-----------:|:-------:|:----------------:|:---------------:|:---------:| | ---------------------------- |:-----------:|:-------:|:----------------:|:---------------:|:---------:|
| 1Fichier | Whirlpool | No | No | Yes | R | | 1Fichier | Whirlpool | No | No | Yes | R |
| Akamai Netstorage | MD5, SHA256 | Yes | No | No | R |
| Amazon Drive | MD5 | No | Yes | No | R | | Amazon Drive | MD5 | No | Yes | No | R |
| Amazon S3 (or S3 compatible) | MD5 | Yes | No | No | R/W | | Amazon S3 (or S3 compatible) | MD5 | Yes | No | No | R/W |
| Backblaze B2 | SHA1 | Yes | No | No | R/W | | Backblaze B2 | SHA1 | Yes | No | No | R/W |

View File

@ -52,6 +52,7 @@
<a class="dropdown-item" href="/overview/"><i class="fas fa-map"></i> Overview</a> <a class="dropdown-item" href="/overview/"><i class="fas fa-map"></i> Overview</a>
<div class="dropdown-divider"></div> <div class="dropdown-divider"></div>
<a class="dropdown-item" href="/fichier/"><i class="fa fa-archive"></i> 1Fichier</a> <a class="dropdown-item" href="/fichier/"><i class="fa fa-archive"></i> 1Fichier</a>
<a class="dropdown-item" href="/netstorage/"><i class="fas fa-database"></i> Akamai NetStorage</a>
<a class="dropdown-item" href="/alias/"><i class="fa fa-link"></i> Alias</a> <a class="dropdown-item" href="/alias/"><i class="fa fa-link"></i> Alias</a>
<a class="dropdown-item" href="/amazonclouddrive/"><i class="fab fa-amazon"></i> Amazon Drive</a> <a class="dropdown-item" href="/amazonclouddrive/"><i class="fab fa-amazon"></i> Amazon Drive</a>
<a class="dropdown-item" href="/s3/"><i class="fab fa-amazon"></i> Amazon S3</a> <a class="dropdown-item" href="/s3/"><i class="fab fa-amazon"></i> Amazon S3</a>

View File

@ -139,6 +139,9 @@ backends:
- backend: "memory" - backend: "memory"
remote: ":memory:" remote: ":memory:"
fastlist: true fastlist: true
- backend: "netstorage"
remote: "TestnStorage:"
fastlist: true
- backend: "onedrive" - backend: "onedrive"
remote: "TestOneDrive:" remote: "TestOneDrive:"
fastlist: false fastlist: false