> + @Override
> + public ListenableFuture<Image> createImage(ImageTemplate template) {
> + checkArgument(template instanceof CloneImageTemplate,
> + " docker only currently supports creating images through
> cloning.");
> + CloneImageTemplate cloneTemplate = (CloneImageTemplate) template;
> +
> + Container container =
> api.getRemoteApi().inspectContainer(cloneTemplate.getSourceNodeId());
> + CommitOptions options =
> CommitOptions.Builder.containerId(container.getId()).tag(cloneTemplate.getName());
> + org.jclouds.docker.domain.Image dockerImage =
> api.getRemoteApi().commit(options);
> +
> + dockerImage =
> org.jclouds.docker.domain.Image.builder().fromImage(dockerImage)
> + .repoTags(ImmutableList.of(cloneTemplate.getName() +
> ":latest"))
> + .build();
> +
> + logger.info(">> Registered new image %s, waiting for it to become
> available.", dockerImage.getId());
> + final AtomicReference<Image> image = Atomics.newReference(new
> ImageToImage().apply(dockerImage));
Inject the `ImageToImage` function in the constructor.
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/57/files#r12936696