in cmd/terminate.go [69:103]
func terminateInteractive(h *ec2helper.EC2Helper) {
// If region is not specified in flags, ask region
var region *string
var err error
if regionFlag == "" {
region, err = question.AskRegion(h)
if cli.ShowError(err, "Asking region failed") {
return
}
} else {
region = ®ionFlag
}
h.ChangeRegion(*region)
// Keep asking for instance ids for termination
instanceIds := []string{}
for {
// Ask instance ID
instanceIdAnswer, err := question.AskInstanceIds(h, instanceIds)
if cli.ShowError(err, "Terminate Error") {
return
}
if instanceIdAnswer == nil || *instanceIdAnswer == cli.ResponseNo {
break
} else {
instanceIds = append(instanceIds, *instanceIdAnswer)
}
}
if question.AskTerminationConfirmation(instanceIds) == cli.ResponseYes {
cli.ShowError(h.TerminateInstances(instanceIds), "Terminating instances failed")
}
}