in pkg/ec2metadata/ec2metadata.go [139:154]
func (e *Service) GetScheduledMaintenanceEvents() ([]ScheduledEventDetail, error) {
resp, err := e.Request(ScheduledEventPath)
if resp != nil && (resp.StatusCode < 200 || resp.StatusCode >= 300) {
return nil, fmt.Errorf("Metadata request received http status code: %d", resp.StatusCode)
}
if err != nil {
return nil, fmt.Errorf("Unable to parse metadata response: %w", err)
}
defer resp.Body.Close()
var scheduledEvents []ScheduledEventDetail
err = json.NewDecoder(resp.Body).Decode(&scheduledEvents)
if err != nil {
return nil, fmt.Errorf("Could not decode json retrieved from imds: %w", err)
}
return scheduledEvents, nil
}