Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 15 additions & 12 deletions tavern/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -369,21 +369,24 @@ func GetPubKey() (*ecdh.PublicKey, error) {
return pub, nil
}

func newSecretsManager() (secrets.SecretsManager, error) {
if EnvGCPProjectID.String() == "" && EnvSecretsManagerPath.String() == "" {
slog.Error("No configuration provided for secret manager path, using a potentially insecure default.")
return secrets.NewDebugFileSecrets("/tmp/tavern-secrets")
}
if EnvSecretsManagerPath.String() == "" {
return secrets.NewGcp(EnvGCPProjectID.String())
}

return secrets.NewDebugFileSecrets(EnvSecretsManagerPath.String())
}

func getKeyPair() (*ecdh.PublicKey, *ecdh.PrivateKey, error) {
curve := ecdh.X25519()

var secretsManager secrets.SecretsManager
var err error

if EnvSecretsManagerPath.String() == "" {
secretsManager, err = secrets.NewGcp("")
} else {
secretsManager, err = secrets.NewDebugFileSecrets(EnvSecretsManagerPath.String())
}
if err != nil {
slog.Error("unable to setup secrets manager")
slog.Error("if you're running locally try setting `export SECRETS_FILE_PATH='/tmp/secrets'` \n")
return nil, nil, fmt.Errorf("unable to connect to secrets manager: %s", err.Error())
secretsManager, err := newSecretsManager()
if err != nil || secretsManager == nil {
return nil, nil, fmt.Errorf("failed to configure secret manager: %w", err)
}

// Check if we already have a key
Expand Down
Loading