Convert CLI to urfave v2

Followed the Migration Guide at https://cli.urfave.org/migrate-v1-to-v2/
The major changes not pointed out in the migration guide are:
- context.Args() no longer produces a []slice, so context.Args().Slice()
  in substitued
- All cli.Global***** are deprecated (the migration guide is somewhat
  unclear on this)

Signed-off-by: Derek Nola <derek.nola@suse.com>

Vendor in urfave cli/v2

Signed-off-by: Derek Nola <derek.nola@suse.com>

Fix NewStringSlice calls

Signed-off-by: Derek Nola <derek.nola@suse.com>
This commit is contained in:
Derek Nola
2024-02-12 10:51:13 -08:00
parent d4d228926c
commit 132485adb0
149 changed files with 11041 additions and 4693 deletions

View File

@@ -28,41 +28,42 @@ import (
"github.com/containerd/containerd/v2/pkg/cio"
"github.com/containerd/containerd/v2/pkg/oci"
"github.com/containerd/log"
"github.com/urfave/cli"
"github.com/urfave/cli/v2"
)
var execCommand = cli.Command{
Name: "exec",
Usage: "Execute additional processes in an existing container",
ArgsUsage: "[flags] CONTAINER CMD [ARG...]",
SkipArgReorder: true,
var execCommand = &cli.Command{
Name: "exec",
Usage: "Execute additional processes in an existing container",
ArgsUsage: "[flags] CONTAINER CMD [ARG...]",
Flags: []cli.Flag{
cli.StringFlag{
&cli.StringFlag{
Name: "cwd",
Usage: "Working directory of the new process",
},
cli.BoolFlag{
Name: "tty,t",
Usage: "Allocate a TTY for the container",
&cli.BoolFlag{
Name: "tty",
Aliases: []string{"t"},
Usage: "Allocate a TTY for the container",
},
cli.BoolFlag{
Name: "detach,d",
Usage: "Detach from the task after it has started execution",
&cli.BoolFlag{
Name: "detach",
Aliases: []string{"d"},
Usage: "Detach from the task after it has started execution",
},
cli.StringFlag{
&cli.StringFlag{
Name: "exec-id",
Required: true,
Usage: "Exec specific id for the process",
},
cli.StringFlag{
&cli.StringFlag{
Name: "fifo-dir",
Usage: "Directory used for storing IO FIFOs",
},
cli.StringFlag{
&cli.StringFlag{
Name: "log-uri",
Usage: "Log uri for custom shim logging",
},
cli.StringFlag{
&cli.StringFlag{
Name: "user",
Usage: "User id or name",
},
@@ -186,7 +187,7 @@ var execCommand = cli.Command{
return err
}
if code != 0 {
return cli.NewExitError("", int(code))
return cli.Exit("", int(code))
}
return nil
},