Merge pull request #10221 from ashley-cui/envsec

Add support for environment variable secrets
This commit is contained in:
OpenShift Merge Robot
2021-05-07 05:34:26 -04:00
committed by GitHub
13 changed files with 293 additions and 15 deletions

View File

@ -1716,6 +1716,28 @@ func WithSecrets(secretNames []string) CtrCreateOption {
}
}
// WithSecrets adds environment variable secrets to the container
func WithEnvSecrets(envSecrets map[string]string) CtrCreateOption {
return func(ctr *Container) error {
ctr.config.EnvSecrets = make(map[string]*secrets.Secret)
if ctr.valid {
return define.ErrCtrFinalized
}
manager, err := secrets.NewManager(ctr.runtime.GetSecretsStorageDir())
if err != nil {
return err
}
for target, src := range envSecrets {
secr, err := manager.Lookup(src)
if err != nil {
return err
}
ctr.config.EnvSecrets[target] = secr
}
return nil
}
}
// WithPidFile adds pidFile to the container
func WithPidFile(pidFile string) CtrCreateOption {
return func(ctr *Container) error {