feat(backend): add requireKey option to backend

This option will prevent `autorestic` from generating a key and will
cause it to crash instead. This is intended for use cases where you want
to provision the key yourself and don't want `autorestic` to
accidentally generate one for you.
This commit is contained in:
Boris Bera
2024-07-02 20:25:23 -04:00
parent 62a81d1420
commit 7b51d31d36
4 changed files with 32 additions and 11 deletions

View File

@@ -6,6 +6,7 @@ import (
"testing"
"github.com/spf13/viper"
"github.com/stretchr/testify/assert"
)
func TestGenerateRepo(t *testing.T) {
@@ -222,4 +223,16 @@ func TestValidate(t *testing.T) {
}
assertEqual(t, err.Error(), "Backend \"foo\" has no \"path\"")
})
t.Run("require key with no key", func(t *testing.T) {
b := Backend{
name: "foo",
Type: "local",
Path: "~/foo/bar",
RequireKey: true,
}
err := b.validate()
fmt.Printf("error: %v\n", err)
assert.EqualError(t, err, "backend foo requires a key but none was provided")
})
}