Merge pull request #7803 from yifan-gu/rkt_docker_image

kubelet/rkt: Add docker prefix to image string.
This commit is contained in:
Jerzy Szczepkowski 2015-05-06 09:22:50 +02:00
commit 4d655e3fcf

View File

@ -414,7 +414,7 @@ func (r *runtime) makePodManifest(pod *api.Pod, volumeMap map[string]volume.Volu
// TODO(yifan): Replace with 'rkt images'.
func (r *runtime) getImageID(imageName string) (string, error) {
output, err := r.runCommand("fetch", imageName)
output, err := r.runCommand("fetch", dockerPrefix+imageName)
if err != nil {
return "", err
}
@ -740,12 +740,14 @@ func (r *runtime) writeDockerAuthConfig(image string, creds docker.AuthConfigura
}
// PullImage invokes 'rkt fetch' to download an aci.
func (r *runtime) PullImage(img string) error {
// Use credentials for docker images. This string operation can be cleaned up
// TODO(yifan): Now we only support docker images, this should be changed
// once the format of image is landed, see:
//
// https://github.com/GoogleCloudPlatform/kubernetes/issues/7203
//
if strings.HasPrefix(img, dockerPrefix) {
func (r *runtime) PullImage(img string) error {
// TODO(yifan): The credential operation is a copy from dockertools package,
// Need to resolve the code duplication.
repoToPull, tag := parsers.ParseRepositoryTag(img)
// If no tag was specified, use the default "latest".
if len(tag) == 0 {
@ -762,9 +764,8 @@ func (r *runtime) PullImage(img string) error {
if err := r.writeDockerAuthConfig(img, creds); err != nil {
return err
}
}
output, err := r.runCommand("fetch", img)
output, err := r.runCommand("fetch", dockerPrefix+img)
if err != nil {
return fmt.Errorf("rkt: Failed to fetch image: %v:", output)
}
@ -775,7 +776,7 @@ func (r *runtime) PullImage(img string) error {
// TODO(yifan): 'rkt image' is now landed on master, use that once we bump up
// the rkt version.
func (r *runtime) IsImagePresent(img string) (bool, error) {
if _, err := r.runCommand("prepare", "--local=true", img); err != nil {
if _, err := r.runCommand("prepare", "--local=true", dockerPrefix+img); err != nil {
return false, nil
}
return true, nil