Webhook Deploy timeout

danielku15's Avatar

danielku15

18 Aug, 2018 04:13 PM

Hello.

After the build of my project completes I am informing my own server via Webhook deploy. On my build server I then start downloading some artifacts to deploy my documentation and examples. This deployment process takes quite a while (~3-5mins). Unfortunately the timeout for the Webhook deployment provider seems to be quite short and the deploy fails with the following info:

Calling webhook https://docs.alphaTab.net/deploy.php...
Error calling webhook https://docs.alphaTab.net/deploy.php: A task was canceled.

Is there maybe a way to increase the timeout for this call? I couldn't find anything in the docs.

The project URL is: https://ci.appveyor.com/project/Danielku15/alphatab

  1. Support Staff 1 Posted by Ilya Finkelshte... on 18 Aug, 2018 06:52 PM

    Ilya Finkelshteyn's Avatar

    Honestly I do not think this is correct way to deal with webhook. Web server should validate webhook and if it is correct, return 204 and start what it needs to do asynchronously.

    For example AppVeyor behaves this way, when gets webhook from GitHub. All GitHub webhooks to AppVeyor would fail if we response only after build completed.

  2. 2 Posted by danielku15 on 18 Aug, 2018 08:06 PM

    danielku15's Avatar

    For some scenarios I totally agree that WebHooks should launch some async operation. If a hook would take e.g. >10mins there is more complex stuff ongoing and there should run an async job.

    But for most of the simple cases having an asynchronous job would be quite an overhead. e.g. in PHP you do not have the easy possibility to start an asynchronous job, it simply does not exist by design. Setting up a whole asynchronous server-side job system (via cron or comparable frameworks) just for a copy-deploy seems an overkill to me.

    In my case it is a simple zip-download followed by an extraction of the zip into the correct folder. Nothing special, but might take a few minutes.

    Also by having it asynchronously you loose the feedback if something on the deployment fails. The continuous integration builds would claim that the builds was successful even though the deployment steps failed. That's not how continuous integration/deployment should work (IMHO). Again I would need to introduce a separate notification system to keep track of failed deployments.

    I guess also other deployments like FTP allow deploys to take longer. Beside that I just stumbled over the "environment" deploy which I somehow missed on the docs so far (I'm quite new to Appveyor). It sounded a bit more like the way that it can run longer operations async to the builds. But also there after 1 min the WebHook runs in a timeout.

  3. Support Staff 3 Posted by Ilya Finkelshte... on 28 Aug, 2018 03:23 PM

    Ilya Finkelshteyn's Avatar

    OK, we will do that. Please watch this GitHub issue. It should not take too long to implement.

  4. Ilya Finkelshteyn closed this discussion on 28 Aug, 2018 03:23 PM.

  5. Ilya Finkelshteyn re-opened this discussion on 31 Aug, 2018 12:52 AM

  6. Support Staff 4 Posted by Ilya Finkelshte... on 31 Aug, 2018 12:52 AM

    Ilya Finkelshteyn's Avatar

    We added this feature (check documentation). Your scenario should work now.

  7. Ilya Finkelshteyn closed this discussion on 31 Aug, 2018 12:52 AM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac