diff options
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/podman/common/completion.go | 8 | ||||
-rw-r--r-- | cmd/podman/common/create.go | 48 | ||||
-rw-r--r-- | cmd/podman/machine/init.go | 10 | ||||
-rw-r--r-- | cmd/podman/machine/list.go | 14 |
4 files changed, 46 insertions, 34 deletions
diff --git a/cmd/podman/common/completion.go b/cmd/podman/common/completion.go index 1c0065006..3d36162ee 100644 --- a/cmd/podman/common/completion.go +++ b/cmd/podman/common/completion.go @@ -1057,10 +1057,10 @@ func getStructFields(f reflect.Value, prefix string) []string { // -> "container=", "event=", "image=", "pod=", "volume=", "type=" func AutocompleteEventFilter(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) { eventTypes := func(_ string) ([]string, cobra.ShellCompDirective) { - return []string{"attach", "checkpoint", "cleanup", "commit", "create", "exec", - "export", "import", "init", "kill", "mount", "pause", "prune", "remove", - "restart", "restore", "start", "stop", "sync", "unmount", "unpause", - "pull", "push", "save", "tag", "untag", "refresh", "renumber", + return []string{"attach", "checkpoint", "cleanup", "commit", "connect", "create", "disconnect", "exec", + "exec_died", "exited", "export", "import", "init", "kill", "loadFromArchive", "mount", "pause", + "prune", "pull", "push", "refresh", "remove", "rename", "renumber", "restart", "restore", "save", + "start", "stop", "sync", "tag", "unmount", "unpause", "untag", }, cobra.ShellCompDirectiveNoFileComp } kv := keyValueCompletion{ diff --git a/cmd/podman/common/create.go b/cmd/podman/common/create.go index 309bbda59..62c9f4c9a 100644 --- a/cmd/podman/common/create.go +++ b/cmd/podman/common/create.go @@ -312,30 +312,6 @@ func DefineCreateFlags(cmd *cobra.Command, cf *entities.ContainerCreateOptions, ) _ = cmd.RegisterFlagCompletionFunc(logOptFlagName, AutocompleteLogOpt) - memoryReservationFlagName := "memory-reservation" - createFlags.StringVar( - &cf.MemoryReservation, - memoryReservationFlagName, "", - "Memory soft limit "+sizeWithUnitFormat, - ) - _ = cmd.RegisterFlagCompletionFunc(memoryReservationFlagName, completion.AutocompleteNone) - - memorySwapFlagName := "memory-swap" - createFlags.StringVar( - &cf.MemorySwap, - memorySwapFlagName, "", - "Swap limit equal to memory plus swap: '-1' to enable unlimited swap", - ) - _ = cmd.RegisterFlagCompletionFunc(memorySwapFlagName, completion.AutocompleteNone) - - memorySwappinessFlagName := "memory-swappiness" - createFlags.Int64Var( - &cf.MemorySwappiness, - memorySwappinessFlagName, -1, - "Tune container memory swappiness (0 to 100, or -1 for system default)", - ) - _ = cmd.RegisterFlagCompletionFunc(memorySwappinessFlagName, completion.AutocompleteNone) - createFlags.BoolVar( &cf.NoHealthCheck, "no-healthcheck", false, @@ -895,6 +871,30 @@ func DefineCreateFlags(cmd *cobra.Command, cf *entities.ContainerCreateOptions, "Memory limit "+sizeWithUnitFormat, ) _ = cmd.RegisterFlagCompletionFunc(memoryFlagName, completion.AutocompleteNone) + + memoryReservationFlagName := "memory-reservation" + createFlags.StringVar( + &cf.MemoryReservation, + memoryReservationFlagName, "", + "Memory soft limit "+sizeWithUnitFormat, + ) + _ = cmd.RegisterFlagCompletionFunc(memoryReservationFlagName, completion.AutocompleteNone) + + memorySwapFlagName := "memory-swap" + createFlags.StringVar( + &cf.MemorySwap, + memorySwapFlagName, "", + "Swap limit equal to memory plus swap: '-1' to enable unlimited swap", + ) + _ = cmd.RegisterFlagCompletionFunc(memorySwapFlagName, completion.AutocompleteNone) + + memorySwappinessFlagName := "memory-swappiness" + createFlags.Int64Var( + &cf.MemorySwappiness, + memorySwappinessFlagName, -1, + "Tune container memory swappiness (0 to 100, or -1 for system default)", + ) + _ = cmd.RegisterFlagCompletionFunc(memorySwappinessFlagName, completion.AutocompleteNone) } //anyone can use these cpusFlagName := "cpus" diff --git a/cmd/podman/machine/init.go b/cmd/podman/machine/init.go index 518e7490f..2d0afbf05 100644 --- a/cmd/podman/machine/init.go +++ b/cmd/podman/machine/init.go @@ -5,6 +5,7 @@ package machine import ( "fmt" + "os" "github.com/containers/common/pkg/completion" "github.com/containers/podman/v4/cmd/podman/registry" @@ -94,7 +95,7 @@ func init() { _ = initCmd.RegisterFlagCompletionFunc(ImagePathFlagName, completion.AutocompleteDefault) VolumeFlagName := "volume" - flags.StringArrayVarP(&initOpts.Volumes, VolumeFlagName, "v", []string{}, "Volumes to mount, source:target") + flags.StringArrayVarP(&initOpts.Volumes, VolumeFlagName, "v", cfg.Machine.Volumes, "Volumes to mount, source:target") _ = initCmd.RegisterFlagCompletionFunc(VolumeFlagName, completion.AutocompleteDefault) VolumeDriverFlagName := "volume-driver" @@ -112,9 +113,10 @@ func init() { // TODO should we allow for a users to append to the qemu cmdline? func initMachine(cmd *cobra.Command, args []string) error { var ( - vm machine.VM err error + vm machine.VM ) + provider := getSystemDefaultProvider() initOpts.Name = defaultMachineName if len(args) > 0 { @@ -126,7 +128,9 @@ func initMachine(cmd *cobra.Command, args []string) error { if _, err := provider.LoadVMByName(initOpts.Name); err == nil { return errors.Wrap(machine.ErrVMAlreadyExists, initOpts.Name) } - + for idx, vol := range initOpts.Volumes { + initOpts.Volumes[idx] = os.ExpandEnv(vol) + } vm, err = provider.NewMachine(initOpts) if err != nil { return err diff --git a/cmd/podman/machine/list.go b/cmd/podman/machine/list.go index b57d911a8..587e521a3 100644 --- a/cmd/podman/machine/list.go +++ b/cmd/podman/machine/list.go @@ -41,6 +41,7 @@ var ( type listFlagType struct { format string noHeading bool + quiet bool } type machineReporter struct { @@ -70,6 +71,7 @@ func init() { flags.StringVar(&listFlag.format, formatFlagName, "{{.Name}}\t{{.VMType}}\t{{.Created}}\t{{.LastUp}}\t{{.CPUs}}\t{{.Memory}}\t{{.DiskSize}}\n", "Format volume output using JSON or a Go template") _ = lsCmd.RegisterFlagCompletionFunc(formatFlagName, common.AutocompleteFormat(machineReporter{})) flags.BoolVar(&listFlag.noHeading, "noheading", false, "Do not print headers") + flags.BoolVarP(&listFlag.quiet, "quiet", "q", false, "Show only machine names") } func list(cmd *cobra.Command, args []string) error { @@ -79,6 +81,10 @@ func list(cmd *cobra.Command, args []string) error { err error ) + if listFlag.quiet { + listFlag.format = "{{.Name}}\n" + } + provider := getSystemDefaultProvider() listResponse, err = provider.List(opts) if err != nil { @@ -124,7 +130,10 @@ func outputTemplate(cmd *cobra.Command, responses []*machineReporter) error { "Memory": "MEMORY", "DiskSize": "DISK SIZE", }) - + printHeader := !listFlag.noHeading + if listFlag.quiet { + printHeader = false + } var row string switch { case cmd.Flags().Changed("format"): @@ -146,8 +155,7 @@ func outputTemplate(cmd *cobra.Command, responses []*machineReporter) error { return err } defer w.Flush() - - if !listFlag.noHeading { + if printHeader { if err := tmpl.Execute(w, headers); err != nil { return errors.Wrapf(err, "failed to write report column headers") } |