From ca33df1468b79dc6dc27798a242b22926c220e6d Mon Sep 17 00:00:00 2001 From: Matthew Heon Date: Wed, 6 Oct 2021 11:17:43 -0400 Subject: Ensure `podman ps --sync` functions The backend for `ps --sync` has been nonfunctional for a long while now - probably since v2.0. It's questionable how useful the flag is in modern Podman (the original case it was intended to catch, Conmon gone via SIGKILL, should be handled now via pinging the process with a signal to ensure it's still alive) but having the ability to force a refresh of container state from the OCI runtime is still useful. Signed-off-by: Matthew Heon --- pkg/ps/ps.go | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'pkg/ps') diff --git a/pkg/ps/ps.go b/pkg/ps/ps.go index e65400555..21ce818cb 100644 --- a/pkg/ps/ps.go +++ b/pkg/ps/ps.go @@ -127,6 +127,12 @@ func ListContainerBatch(rt *libpod.Runtime, ctr *libpod.Container, opts entities ) batchErr := ctr.Batch(func(c *libpod.Container) error { + if opts.Sync { + if err := c.Sync(); err != nil { + return errors.Wrapf(err, "unable to update container state from OCI runtime") + } + } + conConfig = c.Config() conState, err = c.State() if err != nil { -- cgit v1.2.3-54-g00ecf