From 20c7fda41c690de994a295280f15f9e56f8a7cd7 Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Wed, 7 Sep 2022 23:29:45 +0200 Subject: [PATCH] frontend: allow 0 (default) value for healthcheck retries 0 is the default value, so should be ok to explicitly use. Signed-off-by: Sebastiaan van Stijn --- frontend/dockerfile/instructions/parse.go | 4 ++-- frontend/dockerfile/parser/testfiles/health/Dockerfile | 1 + frontend/dockerfile/parser/testfiles/health/result | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/frontend/dockerfile/instructions/parse.go b/frontend/dockerfile/instructions/parse.go index 19110edc1685..9694592267e7 100644 --- a/frontend/dockerfile/instructions/parse.go +++ b/frontend/dockerfile/instructions/parse.go @@ -582,8 +582,8 @@ func parseHealthcheck(req parseRequest) (*HealthCheckCommand, error) { if err != nil { return nil, err } - if retries < 1 { - return nil, fmt.Errorf("--retries must be at least 1 (not %d)", retries) + if retries < 0 { + return nil, fmt.Errorf("--retries cannot be negative (%d)", retries) } healthcheck.Retries = int(retries) } else { diff --git a/frontend/dockerfile/parser/testfiles/health/Dockerfile b/frontend/dockerfile/parser/testfiles/health/Dockerfile index 081e4428820a..f34fe9462167 100644 --- a/frontend/dockerfile/parser/testfiles/health/Dockerfile +++ b/frontend/dockerfile/parser/testfiles/health/Dockerfile @@ -8,3 +8,4 @@ HEALTHCHECK CMD HEALTHCHECK CMD a b HEALTHCHECK --timeout=3s CMD ["foo"] HEALTHCHECK CONNECT TCP 7000 +HEALTHCHECK --start-period=0s --interval=5s --timeout=0s --retries=0 CMD ["foo"] diff --git a/frontend/dockerfile/parser/testfiles/health/result b/frontend/dockerfile/parser/testfiles/health/result index 092924f88c5c..b4f69164e9af 100644 --- a/frontend/dockerfile/parser/testfiles/health/result +++ b/frontend/dockerfile/parser/testfiles/health/result @@ -7,3 +7,4 @@ (healthcheck "CMD" "a b") (healthcheck ["--timeout=3s"] "CMD" "foo") (healthcheck "CONNECT" "TCP 7000") +(healthcheck ["--start-period=0s" "--interval=5s" "--timeout=0s" "--retries=0"] "CMD" "foo")