summaryrefslogtreecommitdiff
path: root/pkg/domain/infra/abi/containers_runlabel.go
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2020-09-10 15:50:10 -0400
committerGitHub <noreply@github.com>2020-09-10 15:50:10 -0400
commit96bc5eb4b77d00f59a342b7af1f6f3ecd35772a5 (patch)
treeea0739b4b1b265c184b9ec57d42e2c84c549911f /pkg/domain/infra/abi/containers_runlabel.go
parent41bd5e298a8d16d1d43f5e9d5a25e5ec6436e87b (diff)
parentdfd10d2bcd1104e08609c379c89dffdc3bf8f09b (diff)
downloadpodman-96bc5eb4b77d00f59a342b7af1f6f3ecd35772a5.tar.gz
podman-96bc5eb4b77d00f59a342b7af1f6f3ecd35772a5.tar.bz2
podman-96bc5eb4b77d00f59a342b7af1f6f3ecd35772a5.zip
Merge pull request #7577 from rhatdan/runlabel1
podman container runlabel should pull the image if it does not exist
Diffstat (limited to 'pkg/domain/infra/abi/containers_runlabel.go')
-rw-r--r--pkg/domain/infra/abi/containers_runlabel.go32
1 files changed, 9 insertions, 23 deletions
diff --git a/pkg/domain/infra/abi/containers_runlabel.go b/pkg/domain/infra/abi/containers_runlabel.go
index 3983ba3a8..30a5a55b8 100644
--- a/pkg/domain/infra/abi/containers_runlabel.go
+++ b/pkg/domain/infra/abi/containers_runlabel.go
@@ -7,12 +7,10 @@ import (
"path/filepath"
"strings"
- "github.com/containers/image/v5/types"
"github.com/containers/podman/v2/libpod/define"
"github.com/containers/podman/v2/libpod/image"
"github.com/containers/podman/v2/pkg/domain/entities"
envLib "github.com/containers/podman/v2/pkg/env"
- "github.com/containers/podman/v2/pkg/util"
"github.com/containers/podman/v2/utils"
"github.com/google/shlex"
"github.com/pkg/errors"
@@ -89,29 +87,17 @@ func (ic *ContainerEngine) runlabelImage(ctx context.Context, label string, imag
// Fallthrough and pull!
}
- // Parse credentials if specified.
- var credentials *types.DockerAuthConfig
- if options.Credentials != "" {
- credentials, err = util.ParseRegistryCreds(options.Credentials)
- if err != nil {
- return nil, err
- }
- }
-
- // Suppress pull progress bars if requested.
- pullOutput := os.Stdout
- if options.Quiet {
- pullOutput = nil // c/image/copy takes care of the rest
+ pullOptions := entities.ImagePullOptions{
+ Quiet: options.Quiet,
+ CertDir: options.CertDir,
+ SkipTLSVerify: options.SkipTLSVerify,
+ SignaturePolicy: options.SignaturePolicy,
+ Authfile: options.Authfile,
}
-
- // Pull the image.
- dockerRegistryOptions := image.DockerRegistryOptions{
- DockerCertPath: options.CertDir,
- DockerInsecureSkipTLSVerify: options.SkipTLSVerify,
- DockerRegistryCreds: credentials,
+ if _, err := pull(ctx, ic.Libpod.ImageRuntime(), imageRef, pullOptions, &label); err != nil {
+ return nil, err
}
-
- return ic.Libpod.ImageRuntime().New(ctx, imageRef, options.SignaturePolicy, options.Authfile, pullOutput, &dockerRegistryOptions, image.SigningOptions{}, &label, util.PullImageMissing)
+ return ic.Libpod.ImageRuntime().NewFromLocal(imageRef)
}
// generateRunlabelCommand generates the to-be-executed command as a string