restic/internal/backend/local/config.go

28 lines
633 B
Go
Raw Normal View History

2015-12-28 15:51:24 +01:00
package local
import (
"strings"
2017-07-23 14:21:03 +02:00
"github.com/restic/restic/internal/errors"
"github.com/restic/restic/internal/options"
2015-12-28 15:51:24 +01:00
)
2017-03-25 13:20:03 +01:00
// Config holds all information needed to open a local repository.
type Config struct {
2017-04-02 17:57:28 +02:00
Path string
Layout string `option:"layout" help:"use this backend directory layout (default: auto-detect)"`
}
func init() {
options.Register("local", Config{})
2017-03-25 13:20:03 +01:00
}
2015-12-28 15:51:24 +01:00
// ParseConfig parses a local backend config.
func ParseConfig(cfg string) (interface{}, error) {
if !strings.HasPrefix(cfg, "local:") {
return nil, errors.New(`invalid format, prefix "local" not found`)
}
2017-03-25 13:20:03 +01:00
return Config{Path: cfg[6:]}, nil
2015-12-28 15:51:24 +01:00
}