Skip to content

Commit 67f7b84

Browse files
committed
modified com.docker.compose.depends_on label to contain dependency type
Signed-off-by: Mehrad Dadar <[email protected]>
1 parent 7e7262b commit 67f7b84

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

pkg/compose/compose.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,16 @@ func (s *composeService) projectFromName(containers Containers, projectName stri
114114
dependencies := c.Labels[api.DependenciesLabel]
115115
if len(dependencies) > 0 {
116116
service.DependsOn = types.DependsOnConfig{}
117-
for _, d := range strings.Split(dependencies, ",") {
118-
service.DependsOn[d] = types.ServiceDependency{Condition: ServiceConditionRunningOrHealthy}
117+
for _, dc := range strings.Split(dependencies, ",") {
118+
dcArr := strings.Split(dc, ":")
119+
condition := ServiceConditionRunningOrHealthy
120+
dependency := dcArr[0]
121+
122+
// backward compatibility
123+
if len(dcArr) > 1 {
124+
condition = dcArr[1]
125+
}
126+
service.DependsOn[dependency] = types.ServiceDependency{Condition: condition}
119127
}
120128
}
121129
project.Services = append(project.Services, service)

pkg/compose/create.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -433,7 +433,7 @@ func (s *composeService) prepareLabels(service types.ServiceConfig, number int)
433433

434434
var dependencies []string
435435
for s := range service.DependsOn {
436-
dependencies = append(dependencies, s)
436+
dependencies = append(dependencies, s+":"+service.DependsOn[s].Condition)
437437
}
438438
labels[api.DependenciesLabel] = strings.Join(dependencies, ",")
439439
return labels, nil

0 commit comments

Comments
 (0)