Plumb contexts through commands

This is to prepare for otel support.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
Brian Goff
2023-09-09 22:27:44 +00:00
committed by Sebastiaan van Stijn
parent 9eb632dc7c
commit 5400a48aaf
146 changed files with 409 additions and 470 deletions

View File

@ -25,7 +25,7 @@ func newCreateListCommand(dockerCli command.Cli) *cobra.Command {
Short: "Create a local manifest list for annotating and pushing to a registry",
Args: cli.RequiresMinArgs(2),
RunE: func(cmd *cobra.Command, args []string) error {
return createManifestList(dockerCli, args, opts)
return createManifestList(cmd.Context(), dockerCli, args, opts)
},
}
@ -35,7 +35,7 @@ func newCreateListCommand(dockerCli command.Cli) *cobra.Command {
return cmd
}
func createManifestList(dockerCli command.Cli, args []string, opts createOpts) error {
func createManifestList(ctx context.Context, dockerCli command.Cli, args []string, opts createOpts) error {
newRef := args[0]
targetRef, err := normalizeReference(newRef)
if err != nil {
@ -58,7 +58,6 @@ func createManifestList(dockerCli command.Cli, args []string, opts createOpts) e
return errors.Errorf("refusing to amend an existing manifest list with no --amend flag")
}
ctx := context.Background()
// Now create the local manifest list transaction by looking up the manifest schemas
// for the constituent images:
manifests := args[1:]

View File

@ -39,7 +39,7 @@ func newInspectCommand(dockerCli command.Cli) *cobra.Command {
opts.list = args[0]
opts.ref = args[1]
}
return runInspect(dockerCli, opts)
return runInspect(cmd.Context(), dockerCli, opts)
},
}
@ -49,7 +49,7 @@ func newInspectCommand(dockerCli command.Cli) *cobra.Command {
return cmd
}
func runInspect(dockerCli command.Cli, opts inspectOptions) error {
func runInspect(ctx context.Context, dockerCli command.Cli, opts inspectOptions) error {
namedRef, err := normalizeReference(opts.ref)
if err != nil {
return err
@ -76,7 +76,6 @@ func runInspect(dockerCli command.Cli, opts inspectOptions) error {
}
// Next try a remote manifest
ctx := context.Background()
registryClient := dockerCli.RegistryClient(opts.insecure)
imageManifest, err := registryClient.GetManifest(ctx, namedRef)
if err == nil {

View File

@ -53,7 +53,7 @@ func newPushListCommand(dockerCli command.Cli) *cobra.Command {
Args: cli.ExactArgs(1),
RunE: func(cmd *cobra.Command, args []string) error {
opts.target = args[0]
return runPush(dockerCli, opts)
return runPush(cmd.Context(), dockerCli, opts)
},
}
@ -63,7 +63,7 @@ func newPushListCommand(dockerCli command.Cli) *cobra.Command {
return cmd
}
func runPush(dockerCli command.Cli, opts pushOpts) error {
func runPush(ctx context.Context, dockerCli command.Cli, opts pushOpts) error {
targetRef, err := normalizeReference(opts.target)
if err != nil {
return err
@ -82,7 +82,6 @@ func runPush(dockerCli command.Cli, opts pushOpts) error {
return err
}
ctx := context.Background()
if err := pushList(ctx, dockerCli, req); err != nil {
return err
}

View File

@ -1,6 +1,7 @@
package manifest
import (
"context"
"strings"
"github.com/docker/cli/cli"
@ -15,14 +16,14 @@ func newRmManifestListCommand(dockerCli command.Cli) *cobra.Command {
Short: "Delete one or more manifest lists from local storage",
Args: cli.RequiresMinArgs(1),
RunE: func(cmd *cobra.Command, args []string) error {
return runRm(dockerCli, args)
return runRm(cmd.Context(), dockerCli, args)
},
}
return cmd
}
func runRm(dockerCli command.Cli, targets []string) error {
func runRm(_ context.Context, dockerCli command.Cli, targets []string) error {
var errs []string
for _, target := range targets {
targetRef, refErr := normalizeReference(target)