github.com/containers/libpod@v1.9.4-0.20220419124438-4284fd425507/cmd/podman/events.go (about) 1 package main 2 3 import ( 4 "github.com/containers/libpod/cmd/podman/cliconfig" 5 "github.com/containers/libpod/pkg/adapter" 6 "github.com/pkg/errors" 7 "github.com/spf13/cobra" 8 ) 9 10 var ( 11 eventsCommand cliconfig.EventValues 12 eventsDescription = "Monitor podman events" 13 _eventsCommand = &cobra.Command{ 14 Use: "events", 15 Args: noSubArgs, 16 Short: "Show podman events", 17 Long: eventsDescription, 18 RunE: func(cmd *cobra.Command, args []string) error { 19 eventsCommand.InputArgs = args 20 eventsCommand.GlobalFlags = MainGlobalOpts 21 eventsCommand.Remote = remoteclient 22 return eventsCmd(&eventsCommand) 23 }, 24 Example: `podman events 25 podman events --filter event=create 26 podman events --since 1h30s`, 27 } 28 ) 29 30 func init() { 31 eventsCommand.Command = _eventsCommand 32 eventsCommand.SetUsageTemplate(UsageTemplate()) 33 flags := eventsCommand.Flags() 34 flags.StringArrayVar(&eventsCommand.Filter, "filter", []string{}, "filter output") 35 flags.StringVar(&eventsCommand.Format, "format", "", "format the output using a Go template") 36 flags.BoolVar(&eventsCommand.Stream, "stream", true, "stream new events; for testing only") 37 flags.StringVar(&eventsCommand.Since, "since", "", "show all events created since timestamp") 38 flags.StringVar(&eventsCommand.Until, "until", "", "show all events until timestamp") 39 markFlagHidden(flags, "stream") 40 } 41 42 func eventsCmd(c *cliconfig.EventValues) error { 43 runtime, err := adapter.GetRuntime(getContext(), &c.PodmanCommand) 44 if err != nil { 45 return errors.Wrapf(err, "error creating libpod runtime") 46 } 47 defer runtime.DeferredShutdown(false) 48 49 return runtime.Events(c) 50 }