{"action":"opened","issue":{"url":"https://api.github.com/repos/adnanh/webhook/issues/102","repository_url":"https://api.github.com/repos/adnanh/webhook","labels_url":"https://api.github.com/repos/adnanh/webhook/issues/102/labels{/name}","comments_url":"https://api.github.com/repos/adnanh/webhook/issues/102/comments","events_url":"https://api.github.com/repos/adnanh/webhook/issues/102/events","html_url":"https://github.com/adnanh/webhook/issues/102","id":183422390,"number":102,"title":"How are incoming webhooks processed?","user":{"login":"jzimmek","id":40382,"avatar_url":"https://avatars.githubusercontent.com/u/40382?v=3","gravatar_id":"","url":"https://api.github.com/users/jzimmek","html_url":"https://github.com/jzimmek","followers_url":"https://api.github.com/users/jzimmek/followers","following_url":"https://api.github.com/users/jzimmek/following{/other_user}","gists_url":"https://api.github.com/users/jzimmek/gists{/gist_id}","starred_url":"https://api.github.com/users/jzimmek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jzimmek/subscriptions","organizations_url":"https://api.github.com/users/jzimmek/orgs","repos_url":"https://api.github.com/users/jzimmek/repos","events_url":"https://api.github.com/users/jzimmek/events{/privacy}","received_events_url":"https://api.github.com/users/jzimmek/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-10-17T13:53:28Z","updated_at":"2016-10-17T13:53:28Z","closed_at":null,"body":"In parallel or serialized one-by-one (per hook id)?\r\n\r\nWe are going to build a lightweight CI process on top of webhook. The flow would be like this:\r\n\r\n1) start webhook which gets webhooks of github on git push (hook id: \"build-github-version\")\r\n2) user commits and pushes a file to github\r\n3) github calls webhook\r\n4) webhook (hook id: \"build-github-version\") does some time consuming build stuff (git checkout, docker build, ...)\r\n\r\nStep 4) will take some time and eventually someone will commit in between while there is still a running hook command \"build-github-version\". We want to serialize all incoming requests per hook id to prevent concurrent executions of the hook command.\r\n\r\nIs this a functionality webhook currently supports / would you consider it as a new feature? We can workaround the problem by using lock files etc., but it seems to me like a common issue when dealing with webhooks which execute more complex command."}}
{"actor":{"display_login":"jzimmek"}}