Add Storj Storage Adapter - add Binding

This commit is contained in:
stefanbenten 2019-08-28 15:29:35 +02:00
parent 59014f2110
commit 874268d80e
2 changed files with 36 additions and 1 deletions

View file

@ -149,6 +149,26 @@ var globalFlags = []cli.Flag{
Usage: "",
Value: googleapi.DefaultUploadChunkSize / 1024 / 1024,
},
cli.StringFlag{
Name: "storj-endpoint",
Usage: "Satellite Address including Port.",
Value: "",
},
cli.StringFlag{
Name: "storj-apikey",
Usage: "",
Value: "",
},
cli.StringFlag{
Name: "storj-bucket",
Usage: "",
Value: "",
},
cli.StringFlag{
Name: "storj-enckey",
Usage: "Encryption Key for local file encryption",
Value: "",
},
cli.IntFlag{
Name: "rate-limit",
Usage: "requests per minute",
@ -362,6 +382,20 @@ func New() *Cmd {
} else {
options = append(options, server.UseStorage(storage))
}
case "storj":
if endpoint := c.String("storj-endpoint"); endpoint == "" {
panic("storj-endpoint not set.")
} else if apiKey := c.String("storj-apikey"); apiKey == "" {
panic("storj-apikey not set.")
} else if bucket := c.String("storj-bucket"); bucket == "" {
panic("storj-enckey not set.")
} else if encKey := c.String("storj-enckey"); encKey == "" {
panic("storj-bucket not set.")
} else if storage, err := server.NewStorjStorage(endpoint, apiKey, bucket, encKey, logger); err != nil {
panic(err)
} else {
options = append(options, server.UseStorage(storage))
}
case "local":
if v := c.String("basedir"); v == "" {
panic("basedir not set.")

View file

@ -572,7 +572,7 @@ type StorjStorage struct {
logger *log.Logger
}
func NewStorjStorage(endpoint, apiKey, bucket, encKey string) (*StorjStorage, error) {
func NewStorjStorage(endpoint, apiKey, bucket, encKey string, logger *log.Logger) (*StorjStorage, error) {
var instance StorjStorage
var err error
@ -598,6 +598,7 @@ func NewStorjStorage(endpoint, apiKey, bucket, encKey string) (*StorjStorage, er
if err != nil {
return nil, fmt.Errorf("could not open bucket %q: %v", bucket, err)
}
instance.logger = logger
return &instance, nil
}