From 4669c0f852b289da5a0ec94810632db712c6eea2 Mon Sep 17 00:00:00 2001 From: Aleksandr Serbin Date: Sat, 31 Oct 2020 16:00:19 +0100 Subject: [PATCH] amazon-ebs: log state details on change --- builder/amazon/common/step_run_source_instance.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/builder/amazon/common/step_run_source_instance.go b/builder/amazon/common/step_run_source_instance.go index ed228a128..2df2a2670 100644 --- a/builder/amazon/common/step_run_source_instance.go +++ b/builder/amazon/common/step_run_source_instance.go @@ -245,6 +245,16 @@ func (s *StepRunSourceInstance) Run(ctx context.Context, state multistep.StateBa err := fmt.Errorf("Error waiting for instance (%s) to become ready: %s", instanceId, err) state.Put("error", err) ui.Error(err.Error()) + + // try to get some context from AWS on why was instance + // transitioned to the unexpected state + if resp, e := ec2conn.DescribeInstances(describeInstance); e == nil { + if len(resp.Reservations) > 0 && len(resp.Reservations[0].Instances) > 0 { + instance := resp.Reservations[0].Instances[0] + ui.Error(fmt.Sprintf("Instance state change details: %s: %s", + *instance.StateTransitionReason, *instance.StateReason.Message)) + } + } return multistep.ActionHalt }