feat: add default secret to local store

This commit is contained in:
David Allen 2025-03-31 15:35:15 -06:00
parent c950532e88
commit 82e1c45036
Signed by: towk
GPG key ID: 793B2924A49B3A3F
5 changed files with 72 additions and 7 deletions

View file

@ -15,6 +15,7 @@ type CrawlerConfig struct {
URI string // URI of the BMC
Insecure bool // Whether to ignore SSL errors
CredentialStore secrets.SecretStore
UseDefault bool
}
func (cc *CrawlerConfig) GetUserPass() (BMCUsernamePassword, error) {
@ -382,7 +383,19 @@ func loadBMCCreds(config CrawlerConfig) (BMCUsernamePassword, error) {
event := log.Error()
event.Err(err)
event.Msg("failed to get credentials from secret store")
return BMCUsernamePassword{}, err
// try to get default if parameter is set
if config.UseDefault {
creds, err = config.CredentialStore.GetSecretByID(secrets.DEFAULT_KEY)
// no default credentials
if err != nil {
event := log.Error()
event.Err(err)
event.Msg("failed to get default credentials from secret store")
return BMCUsernamePassword{}, err
}
} else {
return BMCUsernamePassword{}, err
}
}
var bmc_creds BMCUsernamePassword
err = json.Unmarshal([]byte(creds), &bmc_creds)