s3: Remove default prefix "/restic"

This commit is contained in:
Alexander Neumann 2017-11-20 22:29:15 +01:00
parent e83ec17e95
commit 262b0cd9d4
3 changed files with 19 additions and 21 deletions

View File

@ -169,7 +169,7 @@ var parseTests = []struct {
Config: s3.Config{
Endpoint: "eu-central-1",
Bucket: "bucketname",
Prefix: "restic",
Prefix: "",
Connections: 5,
},
},
@ -180,7 +180,7 @@ var parseTests = []struct {
Config: s3.Config{
Endpoint: "hostname.foo",
Bucket: "bucketname",
Prefix: "restic",
Prefix: "",
Connections: 5,
},
},
@ -202,7 +202,7 @@ var parseTests = []struct {
Config: s3.Config{
Endpoint: "eu-central-1",
Bucket: "repo",
Prefix: "restic",
Prefix: "",
Connections: 5,
},
},
@ -224,7 +224,7 @@ var parseTests = []struct {
Config: s3.Config{
Endpoint: "hostname.foo",
Bucket: "repo",
Prefix: "restic",
Prefix: "",
Connections: 5,
},
},
@ -246,7 +246,7 @@ var parseTests = []struct {
Config: s3.Config{
Endpoint: "hostname.foo",
Bucket: "repo",
Prefix: "restic",
Prefix: "",
UseHTTP: true,
Connections: 5,
},

View File

@ -34,8 +34,6 @@ func init() {
options.Register("s3", Config{})
}
const defaultPrefix = "restic"
// ParseConfig parses the string s and extracts the s3 config. The two
// supported configuration formats are s3://host/bucketname/prefix and
// s3:host/bucketname/prefix. The host can also be a valid s3 region
@ -71,15 +69,15 @@ func ParseConfig(s string) (interface{}, error) {
}
func createConfig(endpoint string, p []string, useHTTP bool) (interface{}, error) {
var prefix string
switch {
case len(p) < 1:
if len(p) < 1 {
return nil, errors.New("s3: invalid format, host/region or bucket name not found")
case len(p) == 1 || p[1] == "":
prefix = defaultPrefix
default:
}
var prefix string
if len(p) > 1 && p[1] != "" {
prefix = path.Clean(p[1])
}
cfg := NewConfig()
cfg.Endpoint = endpoint
cfg.UseHTTP = useHTTP

View File

@ -9,13 +9,13 @@ var configTests = []struct {
{"s3://eu-central-1/bucketname", Config{
Endpoint: "eu-central-1",
Bucket: "bucketname",
Prefix: "restic",
Prefix: "",
Connections: 5,
}},
{"s3://eu-central-1/bucketname/", Config{
Endpoint: "eu-central-1",
Bucket: "bucketname",
Prefix: "restic",
Prefix: "",
Connections: 5,
}},
{"s3://eu-central-1/bucketname/prefix/directory", Config{
@ -33,13 +33,13 @@ var configTests = []struct {
{"s3:eu-central-1/foobar", Config{
Endpoint: "eu-central-1",
Bucket: "foobar",
Prefix: "restic",
Prefix: "",
Connections: 5,
}},
{"s3:eu-central-1/foobar/", Config{
Endpoint: "eu-central-1",
Bucket: "foobar",
Prefix: "restic",
Prefix: "",
Connections: 5,
}},
{"s3:eu-central-1/foobar/prefix/directory", Config{
@ -57,26 +57,26 @@ var configTests = []struct {
{"s3:https://hostname:9999/foobar", Config{
Endpoint: "hostname:9999",
Bucket: "foobar",
Prefix: "restic",
Prefix: "",
Connections: 5,
}},
{"s3:https://hostname:9999/foobar/", Config{
Endpoint: "hostname:9999",
Bucket: "foobar",
Prefix: "restic",
Prefix: "",
Connections: 5,
}},
{"s3:http://hostname:9999/foobar", Config{
Endpoint: "hostname:9999",
Bucket: "foobar",
Prefix: "restic",
Prefix: "",
UseHTTP: true,
Connections: 5,
}},
{"s3:http://hostname:9999/foobar/", Config{
Endpoint: "hostname:9999",
Bucket: "foobar",
Prefix: "restic",
Prefix: "",
UseHTTP: true,
Connections: 5,
}},