// Returns a single group by its ID func resource_aws_launch_configuration_retrieve(id string, autoscalingconn *autoscaling.AutoScaling) (*autoscaling.LaunchConfiguration, error) { describeOpts := autoscaling.DescribeLaunchConfigurations{ Names: []string{id}, } log.Printf("[DEBUG] launch configuration describe configuration: %#v", describeOpts) describConfs, err := autoscalingconn.DescribeLaunchConfigurations(&describeOpts) if err != nil { return nil, fmt.Errorf("Error retrieving launch configuration: %s", err) } // Verify AWS returned our launch configuration if len(describConfs.LaunchConfigurations) != 1 || describConfs.LaunchConfigurations[0].Name != id { if err != nil { return nil, fmt.Errorf("Unable to find launch configuration: %#v", describConfs.LaunchConfigurations) } } l := describConfs.LaunchConfigurations[0] return &l, nil }