From 6a890723d26a6c65303a2c3c7432360a1cde6788 Mon Sep 17 00:00:00 2001 From: Xavier Fournet Date: Thu, 19 Mar 2015 11:25:56 +0100 Subject: [PATCH 1/3] SaveImageCmd assumes that you have an auth config setup --- .../com/github/dockerjava/core/DockerClientImpl.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/github/dockerjava/core/DockerClientImpl.java b/src/main/java/com/github/dockerjava/core/DockerClientImpl.java index 0dd560af3..d83c26d2d 100644 --- a/src/main/java/com/github/dockerjava/core/DockerClientImpl.java +++ b/src/main/java/com/github/dockerjava/core/DockerClientImpl.java @@ -151,9 +151,13 @@ public PushImageCmd pushImageCmd(Identifier identifier) { @Override public SaveImageCmd saveImageCmd(String name) { - return new SaveImageCmdImpl(getDockerCmdExecFactory() - .createSaveImageCmdExec(), name).withAuthConfig(dockerClientConfig.effectiveAuthConfig(name)); - + SaveImageCmdImpl cmd = new SaveImageCmdImpl(getDockerCmdExecFactory().createSaveImageCmdExec(), name); + + AuthConfig cfg = dockerClientConfig.effectiveAuthConfig(name); + if (cfg != null) + cmd.withAuthConfig(cfg); + + return cmd; } @Override From fc3f7b750ea91d5259883b35a051b25d78324c08 Mon Sep 17 00:00:00 2001 From: Xavier Fournet Date: Thu, 19 Mar 2015 11:47:11 +0100 Subject: [PATCH 2/3] SaveImageCmd API doesn't support X-Registry-Auth header --- .../com/github/dockerjava/api/command/SaveImageCmd.java | 7 +------ .../java/com/github/dockerjava/core/DockerClientImpl.java | 8 +------- .../github/dockerjava/core/command/SaveImageCmdImpl.java | 2 +- .../com/github/dockerjava/jaxrs/SaveImageCmdExec.java | 2 -- 4 files changed, 3 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/github/dockerjava/api/command/SaveImageCmd.java b/src/main/java/com/github/dockerjava/api/command/SaveImageCmd.java index 8b26c24a9..957ae05cd 100644 --- a/src/main/java/com/github/dockerjava/api/command/SaveImageCmd.java +++ b/src/main/java/com/github/dockerjava/api/command/SaveImageCmd.java @@ -1,7 +1,6 @@ package com.github.dockerjava.api.command; import com.github.dockerjava.api.NotFoundException; -import com.github.dockerjava.api.model.AuthConfig; import java.io.InputStream; @@ -21,10 +20,6 @@ public interface SaveImageCmd extends DockerCmd{ */ public SaveImageCmd withTag(String tag); - public AuthConfig getAuthConfig(); - - public SaveImageCmd withAuthConfig(AuthConfig authConfig); - /** * @throws com.github.dockerjava.api.NotFoundException No such image */ @@ -34,4 +29,4 @@ public static interface Exec extends DockerCmdExec { } -} \ No newline at end of file +} diff --git a/src/main/java/com/github/dockerjava/core/DockerClientImpl.java b/src/main/java/com/github/dockerjava/core/DockerClientImpl.java index d83c26d2d..3ee08823c 100644 --- a/src/main/java/com/github/dockerjava/core/DockerClientImpl.java +++ b/src/main/java/com/github/dockerjava/core/DockerClientImpl.java @@ -151,13 +151,7 @@ public PushImageCmd pushImageCmd(Identifier identifier) { @Override public SaveImageCmd saveImageCmd(String name) { - SaveImageCmdImpl cmd = new SaveImageCmdImpl(getDockerCmdExecFactory().createSaveImageCmdExec(), name); - - AuthConfig cfg = dockerClientConfig.effectiveAuthConfig(name); - if (cfg != null) - cmd.withAuthConfig(cfg); - - return cmd; + return new SaveImageCmdImpl(getDockerCmdExecFactory().createSaveImageCmdExec(), name); } @Override diff --git a/src/main/java/com/github/dockerjava/core/command/SaveImageCmdImpl.java b/src/main/java/com/github/dockerjava/core/command/SaveImageCmdImpl.java index 6a4596c7d..30bb13b2f 100644 --- a/src/main/java/com/github/dockerjava/core/command/SaveImageCmdImpl.java +++ b/src/main/java/com/github/dockerjava/core/command/SaveImageCmdImpl.java @@ -7,7 +7,7 @@ import static com.google.common.base.Preconditions.checkNotNull; -public class SaveImageCmdImpl extends AbstrAuthCfgDockerCmd implements SaveImageCmd { +public class SaveImageCmdImpl extends AbstrDockerCmd implements SaveImageCmd { private String name; private String tag; diff --git a/src/main/java/com/github/dockerjava/jaxrs/SaveImageCmdExec.java b/src/main/java/com/github/dockerjava/jaxrs/SaveImageCmdExec.java index d5087d7fe..e9918d2af 100644 --- a/src/main/java/com/github/dockerjava/jaxrs/SaveImageCmdExec.java +++ b/src/main/java/com/github/dockerjava/jaxrs/SaveImageCmdExec.java @@ -23,11 +23,9 @@ protected InputStream execute(SaveImageCmd command) { WebTarget webResource = getBaseResource().path("/images/" + command.getName() + "/get") .queryParam("tag", command.getTag()); - final String registryAuth = registryAuth(command.getAuthConfig()); LOGGER.trace("GET: {}", webResource); InputStream is = webResource .request() - .header("X-Registry-Auth", registryAuth) .accept(MediaType.APPLICATION_JSON) .get().readEntity(InputStream.class); From 0366cdf82e1bed9525768ab71d2ee8c7f869c1d1 Mon Sep 17 00:00:00 2001 From: Xavier Fournet Date: Sat, 28 Mar 2015 22:51:28 +0100 Subject: [PATCH 3/3] Fix logger for SaveImageCmd and SaveImageCmdImplTest classes --- src/main/java/com/github/dockerjava/jaxrs/SaveImageCmdExec.java | 2 +- .../github/dockerjava/core/command/SaveImageCmdImplTest.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/github/dockerjava/jaxrs/SaveImageCmdExec.java b/src/main/java/com/github/dockerjava/jaxrs/SaveImageCmdExec.java index e9918d2af..b1eccd8f2 100644 --- a/src/main/java/com/github/dockerjava/jaxrs/SaveImageCmdExec.java +++ b/src/main/java/com/github/dockerjava/jaxrs/SaveImageCmdExec.java @@ -12,7 +12,7 @@ public class SaveImageCmdExec extends AbstrDockerCmdExec implements SaveImageCmd.Exec { private static final Logger LOGGER = LoggerFactory - .getLogger(PushImageCmdExec.class); + .getLogger(SaveImageCmdExec.class); public SaveImageCmdExec(WebTarget baseResource) { super(baseResource); diff --git a/src/test/java/com/github/dockerjava/core/command/SaveImageCmdImplTest.java b/src/test/java/com/github/dockerjava/core/command/SaveImageCmdImplTest.java index b62594bed..859a76cc2 100644 --- a/src/test/java/com/github/dockerjava/core/command/SaveImageCmdImplTest.java +++ b/src/test/java/com/github/dockerjava/core/command/SaveImageCmdImplTest.java @@ -27,7 +27,7 @@ @Test(groups = "integration") public class SaveImageCmdImplTest extends AbstractDockerClientTest { public static final Logger LOG = LoggerFactory - .getLogger(PushImageCmdImplTest.class); + .getLogger(SaveImageCmdImplTest.class); String username;