in secretcache/cache.go [35:66]
func New(optFns ...func(*Cache)) (*Cache, error) {
cache := &Cache{
//Initialise default configuration
CacheConfig: CacheConfig{
MaxCacheSize: DefaultMaxCacheSize,
VersionStage: DefaultVersionStage,
CacheItemTTL: DefaultCacheItemTTL,
},
}
// Iterate over options allowing user to specify alternate
// configurations.
for _, optFn := range optFns {
optFn(cache)
}
//Initialise lru cache
cache.lru = newLRUCache(cache.MaxCacheSize)
//Initialise the secrets manager client
if cache.Client == nil {
sess, err := session.NewSession()
if err != nil {
return nil, err
}
cache.Client = secretsmanager.New(sess)
}
return cache, nil
}