List of usage examples for com.amazonaws.services.ec2.model CreateImageRequest setDescription
public void setDescription(String description)
A description for the new image.
From source file:com.carrotgarden.maven.aws.ecc.CarrotElasticCompute.java
License:BSD License
/** * stop instance and take image snapshot *//*from ww w . jav a2 s . c om*/ public Image imageCreate(final String instanceId, final String name, final String description) throws Exception { logger.info("ensure instance state : instanceId=" + instanceId); final InstanceStateName state = stateFrom(instanceId); final boolean wasRunning; switch (state) { case Pending: waitForIstanceState(instanceId, InstanceStateName.Running); case Running: wasRunning = true; break; case Stopping: waitForIstanceState(instanceId, InstanceStateName.Stopped); case Stopped: wasRunning = false; break; default: throw new Exception("image create : invalid instance state=" + state); } if (wasRunning) { instanceStop(instanceId); } final CreateImageRequest request = new CreateImageRequest(); request.setInstanceId(instanceId); request.setName(name); request.setDescription(description); final CreateImageResult result = amazonClient.createImage(request); final String imageId = result.getImageId(); logger.info("ensure image state: imageId=" + imageId); final Image image = waitForImageCreate(imageId); if (wasRunning) { instanceStart(instanceId); } return image; }