Merge pull request #1155 from KostyaSha/pull/521 · DayNightCoder/docker-java@a3623cd · GitHub
Skip to content

Commit a3623cd

Browse files
authored
Merge pull request docker-java#1155 from KostyaSha/pull/521
Pull/521
2 parents 660ee6e + bac5740 commit a3623cd

3 files changed

Lines changed: 25 additions & 9 deletions

File tree

src/main/java/com/github/dockerjava/core/exec/SaveImageCmdExec.java

Lines changed: 13 additions & 7 deletions

src/main/java/com/github/dockerjava/jaxrs/SaveImageCmdExec.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import com.github.dockerjava.api.command.SaveImageCmd;
1313
import com.github.dockerjava.core.DockerClientConfig;
1414
import com.github.dockerjava.jaxrs.util.WrappedResponseInputStream;
15+
import com.google.common.base.Strings;
1516

1617
public class SaveImageCmdExec extends AbstrSyncDockerCmdExec<SaveImageCmd, InputStream> implements SaveImageCmd.Exec {
1718
private static final Logger LOGGER = LoggerFactory.getLogger(SaveImageCmdExec.class);
@@ -22,8 +23,13 @@ public SaveImageCmdExec(WebTarget baseResource, DockerClientConfig dockerClientC
2223

2324
@Override
2425
protected InputStream execute(SaveImageCmd command) {
25-
WebTarget webResource = getBaseResource().path("/images/" + command.getName() + "/get").queryParam("tag",
26-
command.getTag());
26+
// If tag is present, only tar the specific image
27+
// else tar all the images with the same name
28+
String name = command.getName();
29+
if (!Strings.isNullOrEmpty(command.getTag())) {
30+
name += ":" + command.getTag();
31+
}
32+
WebTarget webResource = getBaseResource().path("/images/" + name + "/get");
2733

2834
LOGGER.trace("GET: {}", webResource);
2935
Response response = webResource.request().accept(MediaType.APPLICATION_JSON).get();

src/test/java/com/github/dockerjava/cmd/SaveImageCmdIT.java

Lines changed: 4 additions & 0 deletions

0 commit comments

Comments
 (0)