-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
kube play: sd-notify integration #15248
Conversation
Argh, final "fixes" before the push broke the test. Will look into it. |
One more race condition in the test. We need to wait for the socat log. Probably worth adding that to the other tests as well. |
Opened #15266 in hope to speed up the remote e2e tests. A factor of two slower is screaming for attention. |
@edsantiago PTanotherL |
7941077
to
e5d115e
Compare
Looks like we need to bump the timeout ... |
@edsantiago @mheon PTanotherL I hope that 15 seconds are sufficient for the log file to pop up on arch64 machine. |
15 seconds is preposterous. I'm guessing that's not the problem, that it's something different about |
@vrothberg you're going to need to Please also update the comment on line 145 which says 15074. 15074 was a catchall, #15277 is specific to this bug. Please also reduce the timeout. 15 seconds really is extreme. And, someone gonna need to investigate and fix the bug itself. |
Add a new package for proxying notify sockets and waiting for the READY=1 message to appear. May subject to further changes in future commits. Tests make sure that it behaves properly. Signed-off-by: Valentin Rothberg <[email protected]>
The notify socket can now either be specified via an environment variable or programatically (where the env is ignored). The notify mode and the socket are now also displayed in `container inspect` which comes in handy for debugging and allows for propper testing. Signed-off-by: Valentin Rothberg <[email protected]>
Integrate sd-notify policies into `kube play`. The policies can be configured for all contianers via the `io.containers.sdnotify` annotation or for indidivual containers via the `io.containers.sdnotify/$name` annotation. The `kube play` process will wait for all containers to be ready by waiting for the individual `READY=1` messages which are received via the `pkg/systemd/notifyproxy` proxy mechanism. Also update the simple "container" sd-notify test as it did not fully test the expected behavior which became obvious when adding the new tests. Signed-off-by: Valentin Rothberg <[email protected]>
Thanks a lot, @edsantiago. Updated as suggested. |
Your timings, Monsieur:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Merge me :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: edsantiago, flouthoc, giuseppe, vrothberg 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 |
Integrate sd-notify policies into
kube play
. The policies can beconfigured for all contianers via the
io.containers.sdnotify
annotation or for indidivual containers via the
io.containers.sdnotify/$name
annotation.The
kube play
process will wait for all containers to be ready bywaiting for the individual
READY=1
messages which are received viathe
pkg/systemd/notifyproxy
proxy mechanism.Also update the simple "container" sd-notify test as it did not fully
test the expected behavior which became obvious when adding the new
tests.
Signed-off-by: Valentin Rothberg [email protected]
Note: this the next step toward auto-update support for
kube play
. I will add that in another PR to make reviewing easier.@giuseppe @mheon @edsantiago PTAL