mirror of
https://github.com/helmfile/helmfile.git
synced 2026-10-02 22:01:24 +02:00
* feat(tmpl): added fetchSecretValue template function
This adds a tmpl `fetchSecretValue` and `expandSecretRefs` function by:
- Adding:
- `expandSecretRefs` function in tmpl package that uses vals
package to fetch secrets
- `fetchSecretValue` function in tmpl package like below but for
single string value
- gomock for tests purpose
- Changing:
- move init of vals package to function (so the same instance can be used for template values and rendering the whole template)
* doc(secret): added doc how to use new tmpl methods
Added example usage of `fetchSecretValue` and `expandSecretRefs`
24 lines
389 B
Go
24 lines
389 B
Go
package plugins
|
|
|
|
import (
|
|
"github.com/variantdev/vals"
|
|
"sync"
|
|
)
|
|
|
|
const (
|
|
// cache size for improving performance of ref+.* secrets rendering
|
|
valsCacheSize = 512
|
|
)
|
|
|
|
var instance *vals.Runtime
|
|
var once sync.Once
|
|
|
|
func ValsInstance() (*vals.Runtime, error) {
|
|
var err error
|
|
once.Do(func() {
|
|
instance, err = vals.New(vals.Options{CacheSize: valsCacheSize})
|
|
})
|
|
|
|
return instance, err
|
|
}
|