mirror of
https://github.com/containers/podman.git
synced 2025-08-03 01:37:51 +08:00
Merge pull request #10221 from ashley-cui/envsec
Add support for environment variable secrets
This commit is contained in:
@ -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 {
|
||||
|
Reference in New Issue
Block a user