|
|
|
@ -53,6 +53,14 @@ func (s *stepCreateAMI) Run(_ context.Context, state multistep.StateBag) multist
|
|
|
|
ui.Say("Waiting for AMI to become ready...")
|
|
|
|
ui.Say("Waiting for AMI to become ready...")
|
|
|
|
if _, err := awscommon.WaitForState(&stateChange); err != nil {
|
|
|
|
if _, err := awscommon.WaitForState(&stateChange); err != nil {
|
|
|
|
err := fmt.Errorf("Error waiting for AMI: %s", err)
|
|
|
|
err := fmt.Errorf("Error waiting for AMI: %s", err)
|
|
|
|
|
|
|
|
imagesResp, err := ec2conn.DescribeImages(&ec2.DescribeImagesInput{ImageIds: []*string{createResp.ImageId}})
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
|
|
stateReason := imagesResp.Images[0].StateReason.Message
|
|
|
|
|
|
|
|
if stateReason != nil {
|
|
|
|
|
|
|
|
err = fmt.Errorf("%s. Root cause: %s", err.Error(), *stateReason)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
state.Put("error", err)
|
|
|
|
state.Put("error", err)
|
|
|
|
ui.Error(err.Error())
|
|
|
|
ui.Error(err.Error())
|
|
|
|
return multistep.ActionHalt
|
|
|
|
return multistep.ActionHalt
|
|
|
|
|