in cfn/scheduler/scheduler_notag.go [134:166]
func (s *Scheduler) CleanupEvents(ruleName string, targetID string) error {
if len(ruleName) == 0 {
return cfnerr.New(ServiceInternalError, "Unable to complete request", errors.New("ruleName is required"))
}
if len(targetID) == 0 {
return cfnerr.New(ServiceInternalError, "Unable to complete request", errors.New("targetID is required"))
}
_, err := s.client.RemoveTargets(&cloudwatchevents.RemoveTargetsInput{
Ids: []*string{
aws.String(targetID),
},
Rule: aws.String(ruleName),
})
if err != nil {
es := fmt.Sprintf("Error cleaning CloudWatchEvents Target (targetId=%s)", targetID)
s.logger.Println(es)
return cfnerr.New(ServiceInternalError, es, err)
}
s.logger.Printf("CloudWatchEvents Target (targetId=%s) removed", targetID)
_, rerr := s.client.DeleteRule(&cloudwatchevents.DeleteRuleInput{
Name: aws.String(ruleName),
})
if rerr != nil {
es := fmt.Sprintf("Error cleaning CloudWatchEvents (ruleName=%s)", ruleName)
s.logger.Println(es)
return cfnerr.New(ServiceInternalError, es, rerr)
}
s.logger.Printf("CloudWatchEvents Rule (ruleName=%s) removed", ruleName)
return nil
}