You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by "Josef Cacek (JIRA)" <ji...@apache.org> on 2016/08/22 11:43:20 UTC

[jira] [Created] (JCLOUDS-1158) DockerComputeServiceAdapter.getImage(String) doesn't work correctly for Docker on RHEL Atomic host

Josef Cacek created JCLOUDS-1158:
------------------------------------

             Summary: DockerComputeServiceAdapter.getImage(String) doesn't work correctly for Docker on RHEL Atomic host
                 Key: JCLOUDS-1158
                 URL: https://issues.apache.org/jira/browse/JCLOUDS-1158
             Project: jclouds
          Issue Type: Bug
          Components: jclouds-labs
            Reporter: Josef Cacek


The {{org.jclouds.docker.compute.strategy.DockerComputeServiceAdapter.getImage(String)}} method doesn't find images when Docker from RHEL (Atomic) is used. The reason is the returned Image {{repoTags}} field from the Docker server contains also registry hostname. E.g.
{code}
"RepoTags":["docker.io/kwart/alpine-ext:3.3-ssh"]
{code}

The problem is in the condition used in this piece of code:
{code}
for (String tag : input.repoTags()) {
   if (tag.equals(imageIdOrName) || tag.equals(imageIdOrName + ":latest")) {
      return true;
   }
}
{code}

IMO, we should add also 2 more options to statement:

{code}
final String imageNameWithHostPrefix = "docker.io/" + imageIdOrName;
for (String tag : input.repoTags()) {
   if (tag.equals(imageIdOrName) || tag.equals(imageIdOrName + ":latest")
      || tag.equals(imageNameWithHostPrefix) || tag.equals(imageNameWithHostPrefix + ":latest")) {
...
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)