PHPackages                             forsaken-threads/get-hooked - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. forsaken-threads/get-hooked

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

forsaken-threads/get-hooked
===========================

GitLab webhook handler

v0.5.6(9y ago)029MITPHPPHP ^5.5.0 || ^7.0

Since Nov 9Pushed 9y ago1 watchersCompare

[ Source](https://github.com/forsaken-threads/get-hooked)[ Packagist](https://packagist.org/packages/forsaken-threads/get-hooked)[ RSS](/packages/forsaken-threads-get-hooked/feed)WikiDiscussions master Synced today

READMEChangelog (3)Dependencies (5)Versions (4)Used By (0)

Get Hooked
----------

[](#get-hooked)

### A simple-ish *GitLab* webhook handler

[](#a-simple-ish-gitlab-webhook-handler)

This is something I put together to auto-deploy some static sites whenever I pushed to a private *GitLab* repo. It's extensible and has some neat features but is really just a quick hack.

### One part handler, one part queue

[](#one-part-handler-one-part-queue)

Basically the webhook handler takes *GitLab* hooks and stores them in a local **Queue**. Then a locally run **Queue Worker** will pull them off the **Queue** and you can respond to them at your leisure. For example, if you get a flurry of pushes that need deployment to `production`, you probably don't want to pull down every change as it happens. You can queue up that deployment and then do it once rather than responding to every trigger.

Of course, you can also respond to hooks in real-time, or do a combination of both.

Very basic setup
----------------

[](#very-basic-setup)

### Installation

[](#installation)

`composer require forsaken-threads/get-hooked`

### The Webhook Handler

[](#the-webhook-handler)

Put this somewhere public that *GitLab* can hit.

```
