MCPcopy Create free account
hub / github.com/devfile/api / ValidateEvents

Function ValidateEvents

pkg/validation/events.go:35–62  ·  view source on GitHub ↗

ValidateEvents validates all the devfile events

(events v1alpha2.Events, commands []v1alpha2.Command)

Source from the content-addressed store, hash-verified

33
34// ValidateEvents validates all the devfile events
35func ValidateEvents(events v1alpha2.Events, commands []v1alpha2.Command) (err error) {
36
37 commandMap := getCommandsMap(commands)
38
39 switch {
40 case len(events.PreStart) > 0:
41 if preStartErr := isEventValid(events.PreStart, preStart, commandMap); preStartErr != nil {
42 err = multierror.Append(err, preStartErr)
43 }
44 fallthrough
45 case len(events.PostStart) > 0:
46 if postStartErr := isEventValid(events.PostStart, postStart, commandMap); postStartErr != nil {
47 err = multierror.Append(err, postStartErr)
48 }
49 fallthrough
50 case len(events.PreStop) > 0:
51 if preStopErr := isEventValid(events.PreStop, preStop, commandMap); preStopErr != nil {
52 err = multierror.Append(err, preStopErr)
53 }
54 fallthrough
55 case len(events.PostStop) > 0:
56 if postStopErr := isEventValid(events.PostStop, postStop, commandMap); postStopErr != nil {
57 err = multierror.Append(err, postStopErr)
58 }
59 }
60
61 return err
62}
63
64// isEventValid checks if events belonging to a specific event type are valid ie;
65// 1. event should map to a valid devfile command

Callers 1

TestValidateEventsFunction · 0.85

Calls 2

getCommandsMapFunction · 0.85
isEventValidFunction · 0.85

Tested by 1

TestValidateEventsFunction · 0.68