From 558a1bd7760c1505a8788a467d9315f94f2ad097 Mon Sep 17 00:00:00 2001 From: Miloslav Trmač Date: Sat, 28 Jul 2018 07:41:05 +0200 Subject: Split doPullImage from pullImage MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Now that we have a pullGoal, separate determination of the goal from performing it; we will then introduce another entry point with a supplied types.ImageReference. Also remove or correct some misleading comments. Should not change behavior (but does not add unit tests). Signed-off-by: Miloslav Trmač Closes: #1176 Approved by: rhatdan --- libpod/image/pull.go | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'libpod/image/pull.go') diff --git a/libpod/image/pull.go b/libpod/image/pull.go index 787c065cc..4240d72d8 100644 --- a/libpod/image/pull.go +++ b/libpod/image/pull.go @@ -200,11 +200,8 @@ func (ir *Runtime) pullGoalFromImageReference(ctx context.Context, srcRef types. return ir.pullGoalFromGoalNames(goalNames) } -// pullImage pulls an image from configured registries based on inputName. -// By default, only the latest tag (or a specific tag if requested) will be -// pulled. +// pullImage pulls an image based on input name, which may involve from configured registries. func (ir *Runtime) pullImage(ctx context.Context, inputName string, writer io.Writer, authfile, signaturePolicyPath string, signingOptions SigningOptions, dockerOptions *DockerRegistryOptions, forceSecure bool) ([]string, error) { - // pullImage copies the image from the source to the destination var goal pullGoal sc := GetSystemContext(signaturePolicyPath, authfile, false) srcRef, err := alltransports.ParseImageName(inputName) @@ -220,6 +217,11 @@ func (ir *Runtime) pullImage(ctx context.Context, inputName string, writer io.Wr return nil, errors.Wrapf(err, "error determining pull goal for image %q", inputName) } } + return ir.doPullImage(ctx, sc, goal, writer, signingOptions, dockerOptions, forceSecure) +} + +// doPullImage is an internal helper interpreting pullGoal. Almost everyone should call one of the callers of doPullImage instead. +func (ir *Runtime) doPullImage(ctx context.Context, sc *types.SystemContext, goal pullGoal, writer io.Writer, signingOptions SigningOptions, dockerOptions *DockerRegistryOptions, forceSecure bool) ([]string, error) { policyContext, err := getPolicyContext(sc) if err != nil { return nil, err -- cgit v1.2.3-54-g00ecf