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

@@ -36,10 +36,10 @@ import (
"github.com/containerd/platforms"
"github.com/opencontainers/image-spec/identity"
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
"github.com/urfave/cli"
"github.com/urfave/cli/v2"
)
var pullCommand = cli.Command{
var pullCommand = &cli.Command{
Name: "pull",
Usage: "Pull an image from a remote",
ArgsUsage: "[flags] <ref>",
@@ -53,33 +53,33 @@ command. As part of this process, we do the following:
3. Register metadata for the image.
`,
Flags: append(append(commands.RegistryFlags, append(commands.SnapshotterFlags, commands.LabelFlag)...),
cli.StringSliceFlag{
&cli.StringSliceFlag{
Name: "platform",
Usage: "Pull content from a specific platform",
Value: &cli.StringSlice{},
Value: cli.NewStringSlice(),
},
cli.BoolFlag{
&cli.BoolFlag{
Name: "all-platforms",
Usage: "Pull content and metadata from all platforms",
},
cli.BoolFlag{
&cli.BoolFlag{
Name: "all-metadata",
Usage: "(Deprecated: use skip-metadata) Pull metadata for all platforms",
Hidden: true,
},
cli.BoolFlag{
&cli.BoolFlag{
Name: "skip-metadata",
Usage: "Skips metadata for unused platforms (Image may be unable to be pushed without metadata)",
},
cli.BoolFlag{
&cli.BoolFlag{
Name: "print-chainid",
Usage: "Print the resulting image's chain ID",
},
cli.IntFlag{
&cli.IntFlag{
Name: "max-concurrent-downloads",
Usage: "Set the max concurrent downloads for each pull",
},
cli.BoolFlag{
&cli.BoolFlag{
Name: "local",
Usage: "Fetch content from local client rather than using transfer service",
},