feat(docker): add HealthCheck labels.

This commit is contained in:
Fernandez Ludovic 2017-12-16 13:24:07 +01:00 committed by Traefiker
parent 9ee642a7db
commit c26b9b1a5d
6 changed files with 52 additions and 17 deletions

View file

@ -122,6 +122,12 @@ func getFuncServiceBoolLabel(labelSuffix string, defaultValue bool) func(contain
}
}
func getFuncServiceIntLabel(labelSuffix string, defaultValue int) func(container dockerData, serviceName string) int {
return func(container dockerData, serviceName string) int {
return getServiceIntLabel(container, serviceName, labelSuffix, defaultValue)
}
}
func hasFuncServiceLabel(labelSuffix string) func(container dockerData, serviceName string) bool {
return func(container dockerData, serviceName string) bool {
return hasServiceLabel(container, serviceName, labelSuffix)
@ -168,6 +174,16 @@ func getServiceBoolLabel(container dockerData, serviceName string, labelSuffix s
return label.GetBoolValue(container.Labels, label.Prefix+labelSuffix, defaultValue)
}
func getServiceIntLabel(container dockerData, serviceName string, labelSuffix string, defaultValue int) int {
if rawValue, ok := getServiceLabels(container, serviceName)[labelSuffix]; ok {
value, err := strconv.Atoi(rawValue)
if err == nil {
return value
}
}
return label.GetIntValue(container.Labels, label.Prefix+labelSuffix, defaultValue)
}
func getServiceLabels(container dockerData, serviceName string) label.ServicePropertyValues {
return label.ExtractServiceProperties(container.Labels)[serviceName]
}