parseSourceControlTrigger parses source control triggers
(input string)
| 170 | |
| 171 | // parseSourceControlTrigger parses source control triggers |
| 172 | func parseSourceControlTrigger(input string) (*TriggerIR, error) { |
| 173 | tokens := strings.Fields(input) |
| 174 | if len(tokens) == 0 { |
| 175 | return nil, nil |
| 176 | } |
| 177 | |
| 178 | switch tokens[0] { |
| 179 | case "push": |
| 180 | return parsePushTrigger(tokens) |
| 181 | case "pull", "pull_request": |
| 182 | // Normalize "pull" to "pull_request" |
| 183 | normalizedTokens := append([]string{"pull_request"}, tokens[1:]...) |
| 184 | return parsePullRequestTrigger(normalizedTokens) |
| 185 | default: |
| 186 | return nil, nil |
| 187 | } |
| 188 | } |
| 189 | |
| 190 | // parsePushTrigger parses push-related triggers |
| 191 | func parsePushTrigger(tokens []string) (*TriggerIR, error) { |
no test coverage detected