? Probot Wrapper to run GitHub Apps as Lambdas in Zeit's Now 2.0
probot-serverless-now
is a wrapper around Probot to run your GitHub Apps as Serverless Functions with ZEIT Now.
Note: This package is not maintained anymore as GitHub Actions and github-app-token can, most of the time, replace Probot.
app.js
module.exports = app => {
app.on("issues.opened", async context => {
// A new issue was opened, what should we do with it?
context.log(context.payload);
});
};
api/index.js
const { toLambda } = require("probot-serverless-now");
const applicationFunction = require("../app");
module.exports = toLambda(applicationFunction);
now.json
{
"version": 2,
"env": {
"APP_ID": "@my-app-id",
"PRIVATE_KEY": "@my-app-base64-encoded-private-key",
"WEBHOOK_SECRET": "@my-app-webhook-secret"
}
}
PRIVATE_KEY
environment variable should be used instead (possibly base64 encoded).GET /
: typical Probot landing pagePOST /
: webhook handlernow.json
file since they won't share the same APP_ID
, PRIVATE_KEY
, and WEBHOOK_SECRET
environment variables.
To do that, you could either use multiple repositories or a mono-repo with Yarn workspaces or Lerna for instance.