CreateSecret implementaion
[aaf/sms.git] / sms-service / src / sms / backend / backend.go
index 5611f37..3ea651a 100644 (file)
 
 package backend
 
+import (
+       smsconfig "sms/config"
+)
+
 // SecretDomain is where Secrets are stored.
 // A single domain can have any number of secrets
 type SecretDomain struct {
@@ -32,8 +36,8 @@ type SecretKeyValue struct {
 // Secret is the struct that defines the structure of a secret
 // A single Secret can have any number of SecretKeyValue pairs
 type Secret struct {
-       Name   string           `json:"name"`
-       Values []SecretKeyValue `json:"values"`
+       Name   string                 `json:"name"`
+       Values map[string]interface{} `json:"values"`
 }
 
 // SecretBackend interface that will be implemented for various secret backends
@@ -45,7 +49,7 @@ type SecretBackend interface {
        GetSecret(dom string, sec string) (Secret, error)
 
        CreateSecretDomain(name string) (SecretDomain, error)
-       CreateSecret(dom string, sec Secret) (Secret, error)
+       CreateSecret(dom string, sec Secret) error
 
        DeleteSecretDomain(name string) error
        DeleteSecret(dom string, name string) error
@@ -53,7 +57,11 @@ type SecretBackend interface {
 
 // InitSecretBackend returns an interface implementation
 func InitSecretBackend() (SecretBackend, error) {
-       backendImpl := &Vault{}
+       backendImpl := &Vault{
+               vaultAddress: smsconfig.SMSConfig.VaultAddress,
+               vaultToken:   smsconfig.SMSConfig.VaultToken,
+       }
+
        err := backendImpl.Init()
        if err != nil {
                return nil, err