handle dependency involved by shared PID namespace

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
This commit is contained in:
Nicolas De Loof 2021-04-29 21:48:20 +02:00
parent b46015f2f8
commit a93008ab1c
No known key found for this signature in database
GPG Key ID: 9858809D6F8F6E7E

View File

@ -144,15 +144,16 @@ outLoop:
for i := range p.Services { for i := range p.Services {
networkDependency := getDependentServiceFromMode(p.Services[i].NetworkMode) networkDependency := getDependentServiceFromMode(p.Services[i].NetworkMode)
ipcDependency := getDependentServiceFromMode(p.Services[i].Ipc) ipcDependency := getDependentServiceFromMode(p.Services[i].Ipc)
pidDependency := getDependentServiceFromMode(p.Services[i].Pid)
if networkDependency == "" && ipcDependency == "" { if networkDependency == "" && ipcDependency == "" && pidDependency == "" {
continue continue
} }
if p.Services[i].DependsOn == nil { if p.Services[i].DependsOn == nil {
p.Services[i].DependsOn = make(types.DependsOnConfig) p.Services[i].DependsOn = make(types.DependsOnConfig)
} }
for _, service := range p.Services { for _, service := range p.Services {
if service.Name == networkDependency || service.Name == ipcDependency { if service.Name == networkDependency || service.Name == ipcDependency || service.Name == pidDependency {
p.Services[i].DependsOn[service.Name] = types.ServiceDependency{ p.Services[i].DependsOn[service.Name] = types.ServiceDependency{
Condition: types.ServiceConditionStarted, Condition: types.ServiceConditionStarted,
} }