MCPcopy Create free account
hub / github.com/chainloop-dev/chainloop / NewFromConfig

Function NewFromConfig

pkg/credentials/manager/manager.go:34–56  ·  view source on GitHub ↗
(conf *api.Credentials, role credentials.Role, l log.Logger)

Source from the content-addressed store, hash-verified

32)
33
34func NewFromConfig(conf *api.Credentials, role credentials.Role, l log.Logger) (credentials.ReaderWriter, error) {
35 if l == nil {
36 l = log.NewStdLogger(io.Discard)
37 }
38
39 if awsc := conf.GetAwsSecretManager(); awsc != nil {
40 return newAWSCredentialsManager(awsc, conf.SecretPrefix, role, l)
41 }
42
43 if gcpc := conf.GetGcpSecretManager(); gcpc != nil {
44 return newGCPCredentialsManager(gcpc, conf.SecretPrefix, role, l)
45 }
46
47 if vaultc := conf.GetVault(); vaultc != nil {
48 return newVaultCredentialsManager(vaultc, conf.SecretPrefix, role, l)
49 }
50
51 if creds := conf.GetAzureKeyVault(); creds != nil {
52 return newAzureKBManager(creds, conf.SecretPrefix, role, l)
53 }
54
55 return nil, errors.New("no credentials manager configuration found")
56}
57
58func validateConfig(msg protoreflect.ProtoMessage) error {
59 return protovalidate.Validate(msg)

Callers 4

TestNewFromConfigMethod · 0.92
mainFunction · 0.92
mainFunction · 0.92

Calls 8

newAWSCredentialsManagerFunction · 0.85
newGCPCredentialsManagerFunction · 0.85
newAzureKBManagerFunction · 0.85
GetAwsSecretManagerMethod · 0.80
GetGcpSecretManagerMethod · 0.80
GetVaultMethod · 0.80
GetAzureKeyVaultMethod · 0.80

Tested by 2

TestNewFromConfigMethod · 0.74