Skip to content

probes do not treat 404 status as error #99

@klauss42

Description

@klauss42

If I configure probes I expected that mint fails if probes return an error. I would expect that both 40x or 50x status codes for probes should let mint stop processing and return an error.

E.g.

mint slim \
  --target nginx:latest \
  --tag nginx:latest-slim \
  --expose 80 \
  --show-clogs \
  --http-probe-off \
  --http-probe-cmd / \
  --http-probe-cmd /invalid

results in

...
cmd=slim state=http.probe.running
cmd=slim info=http.probe.ports count='1' targets='32783'
cmd=slim info=http.probe.commands count='2' commands='GET /,GET /invalid'
cmd=slim info=http.probe.call endpoint='http://127.0.0.1:32783/invalid' attempt='1' error='none' time='2025-01-27T10:05:53Z' status='404' method='GET'
cmd=slim info=http.probe.call attempt='1' error='none' time='2025-01-27T10:05:53Z' status='200' method='GET' endpoint='http://127.0.0.1:32783/'
cmd=slim info=http.probe.summary total='2' failures='0' successful='2'
cmd=slim state=http.probe.done
cmd=slim info=event message='HTTP probe is done'
cmd=slim state=container.inspection.finishing
...

mint reports 0 failures and continues building the image. In my case I want mint to fail, so that the build pipeline fails because something seems to be wrong with the target image resulting in the 404 (or 500) error.

Did I misunderstand or misuse something?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions