Corrected parameter name, typo, error message, and variable naming

This commit is contained in:
Ivan Pesin 2017-09-10 21:36:17 -05:00
parent e1036eaaf0
commit baad906d24
2 changed files with 9 additions and 9 deletions

View File

@ -381,7 +381,7 @@ type Hook struct {
PassEnvironmentToCommand []Argument `json:"pass-environment-to-command,omitempty"` PassEnvironmentToCommand []Argument `json:"pass-environment-to-command,omitempty"`
PassArgumentsToCommand []Argument `json:"pass-arguments-to-command,omitempty"` PassArgumentsToCommand []Argument `json:"pass-arguments-to-command,omitempty"`
JSONStringParameters []Argument `json:"parse-parameters-as-json,omitempty"` JSONStringParameters []Argument `json:"parse-parameters-as-json,omitempty"`
MaxConcurrency int `json:"max-concurrency,omiempty"` MaxConcurrency int `json:"maximum-concurrent-executions,omitempty"`
TriggerRule *Rules `json:"trigger-rule,omitempty"` TriggerRule *Rules `json:"trigger-rule,omitempty"`
TriggerRuleMismatchHttpResponseCode int `json:"trigger-rule-mismatch-http-response-code,omitempty"` TriggerRuleMismatchHttpResponseCode int `json:"trigger-rule-mismatch-http-response-code,omitempty"`
} }

View File

@ -44,7 +44,7 @@ var (
watcher *fsnotify.Watcher watcher *fsnotify.Watcher
signals chan os.Signal signals chan os.Signal
limits = make(map[string]chan struct{}) hookExecutions = make(map[string]chan struct{})
) )
func matchLoadedHook(id string) *hook.Hook { func matchLoadedHook(id string) *hook.Hook {
@ -115,7 +115,7 @@ func main() {
// initialize concurrency map // initialize concurrency map
if hook.MaxConcurrency > 0 { if hook.MaxConcurrency > 0 {
limits[hook.ID] = make(chan struct{}, hook.MaxConcurrency) hookExecutions[hook.ID] = make(chan struct{}, hook.MaxConcurrency)
msg = fmt.Sprintf("%s (max: %d)", msg, hook.MaxConcurrency) msg = fmt.Sprintf("%s (max: %d)", msg, hook.MaxConcurrency)
} }
log.Println(msg) log.Println(msg)
@ -219,15 +219,15 @@ func hookHandler(w http.ResponseWriter, r *http.Request) {
log.Printf("%s got matched\n", id) log.Printf("%s got matched\n", id)
// check if we have concurrency limits // check if we have concurrency limits
if _, ok := limits[id]; ok { if _, ok := hookExecutions[id]; ok {
if len(limits[id]) == cap(limits[id]) { if len(hookExecutions[id]) == cap(hookExecutions[id]) {
log.Printf("reached concurrency limit for: %s (max=%d)", id, len(limits[id])) log.Printf("reached concurrency limit for: %s (max=%d)", id, len(hookExecutions[id]))
w.WriteHeader(http.StatusTooManyRequests) w.WriteHeader(http.StatusTooManyRequests)
fmt.Fprintf(w, "Error occurred while evaluating hook rules.") fmt.Fprintf(w, "Hook reached maximum concurrent execution limit. Try again later.")
return return
} }
defer func() { <-limits[id] }() defer func() { <-hookExecutions[id] }()
limits[id] <- struct{}{} hookExecutions[id] <- struct{}{}
} }
body, err := ioutil.ReadAll(r.Body) body, err := ioutil.ReadAll(r.Body)