added static secret provider helper from kv

pull/1/head
Brad Rydzewski 5 years ago
parent 9f016e5de0
commit 33c8695c30

@ -20,6 +20,20 @@ func Static(secrets []*drone.Secret) Provider {
return &static{secrets}
}
// StaticVars returns a new static secret provider. The static
// secret provider finds and returns a named secret from the
// static key value pairs.
func StaticVars(vars map[string]string) Provider {
var secrets []*drone.Secret
for k, v := range vars {
secrets = append(secrets, &drone.Secret{
Name: k,
Data: v,
})
}
return Static(secrets)
}
type static struct {
secrets []*drone.Secret
}

@ -33,6 +33,26 @@ func TestStatic(t *testing.T) {
}
}
func TestStaticVars(t *testing.T) {
secrets := map[string]string{
"docker_username": "octocat",
"docker_password": "correct-horse-battery-staple",
}
args := &Request{
Name: "docker_password",
Build: &drone.Build{Event: drone.EventPush},
}
service := StaticVars(secrets)
secret, err := service.Find(noContext, args)
if err != nil {
t.Error(err)
return
}
if secret.Data != secrets["docker_password"] {
t.Errorf("expect docker_password")
}
}
func TestStaticNotFound(t *testing.T) {
secrets := []*drone.Secret{
{Name: "docker_username"},

Loading…
Cancel
Save