-
Notifications
You must be signed in to change notification settings - Fork 2.8k
libpod: fix healthchecks not executing every interval on linux #27330
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
By default, systemd sets a limit of how many times a service can start, which means that if you have a healthcheck that runs more often than the limits, systemd will refuse to start it with a message like "Start request repeated too quickly." emitted to the journal. Signed-off-by: Winter M <winter@antithesis.com>
|
Good change, code LGTM |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: mheon, winterqt The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
For testing, I would recommend doing something like https://github.com/containers/podman/blob/main/test/e2e/healthcheck_run_test.go#L59-L76 with a shorter interval and a runtime long enough to convince systemd to fail (or, with your patch, not fail) |
test/e2e does never run healtchecks via systemd timers, they get disabled there via env var. |
|
Unfortunately having some trouble running the system tests on my work machine :( Can try to write a test and run it through CI if y'all would be fine with that? |
|
Cockpit tests failed for commit 191bbff. @martinpitt, @jelly, @mvollmer please check. |
|
[NON-BLOCKING] Packit jobs failed. @containers/packit-build please check. Everyone else, feel free to ignore. |
|
Sure, if you can't get the tests to run |
By default, systemd sets a limit of how many times a service can start, which means that if you have a healthcheck that runs more often than the limits, systemd will refuse to start it with a message like "Start request repeated too quickly." emitted to the journal.
I'm not familiar enough with the e2e test suite to confidently write a test for this -- hints appreciated! :)
Does this PR introduce a user-facing change?