Fix secret long form target path

Signed-off-by: aiordache <anca.iordache@docker.com>
This commit is contained in:
aiordache 2021-02-23 15:48:16 +01:00
parent b3d39931b3
commit c588a4108c
1 changed files with 12 additions and 3 deletions

View File

@ -87,18 +87,27 @@ func toVolumeSpecs(project *types.Project, s types.ServiceConfig) ([]volumeSpec,
for _, s := range s.Secrets {
name := fmt.Sprintf("%s-%s", project.Name, s.Source)
target := path.Join("/run/secrets", or(s.Target, s.Source))
target := path.Join("/run/secrets", or(s.Target, path.Join(s.Source, s.Source)))
readOnly := true
filename := filepath.Base(target)
dir := filepath.Dir(target)
specs = append(specs, volumeSpec{
source: &apiv1.VolumeSource{
Secret: &apiv1.SecretVolumeSource{
SecretName: name,
Items: []apiv1.KeyToPath{
{
Key: name,
Path: filename,
},
},
},
},
mount: apiv1.VolumeMount{
Name: name,
MountPath: target,
Name: filename,
MountPath: dir,
ReadOnly: readOnly,
},
})