Skip to content

arlac77/koa-github-hook-handler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

npm License Typed with TypeScript bundlejs downloads GitHub Issues Build Status Styled with prettier Commitizen friendly Known Vulnerabilities Coverage Status

koa-github-hook-handler

handle github/gitea/bitbucket requests

import Koa from "koa";
import Router from "koa-better-router";
import { createGithubHookHandler } from "koa-github-hook-handler";

...

const router = Router();
const secret = "...";

router.addRoute(
  "POST",
  "/hook",
  createGithubHookHandler(
    {
      push: async request => {
        console.log("PUSH",request);
        return { ok: true };
      }
    },
    { secret }
  )
);

API

Table of Contents

Context

Type: Object

KoaHandler

Type: Function

Parameters

WebhookHandler

Type: Function

Parameters

  • request Object decoded request body
  • event string from 'x-github-event' header
  • ctx Context from koa

createGithubHookHandler

Create a koa middleware suitable to bridge github webhook requests to KoaHandlers

Parameters

  • actions Object holding all the handles for the events (event is the key)

  • config Object

    • config.secret string to decode signature

Returns KoaHandler suitable as koa middleware

createGiteaHookHandler

Create a koa middleware suitable to bridge gitea webhook requests to KoaHandlers

Parameters

  • actions Object holding all the handles for the events (event is the key)

  • config Object

    • config.secret string to decode signature

Returns KoaHandler suitable as koa middleware

createBitbucketHookHandler

Create a koa middleware suitable to bridge gitea webhook requests to KoaHandlers

Parameters

  • actions Object holding all the handles for the events (event is the key)

  • config Object

    • config.secret string to decode signature

Returns KoaHandler suitable as koa middleware

install

With npm do:

npm install koa-github-hook-handler

license

BSD-2-Clause