diff --git a/lib/server.js b/lib/server.js index 12f8832..65a5398 100644 --- a/lib/server.js +++ b/lib/server.js @@ -1,6 +1,5 @@ // External dependencies const fs = require("fs") -const path = require("path") const yaml = require("js-yaml") const express = require("express") const { createWebhooksApi } = require("@octokit/webhooks") @@ -8,16 +7,16 @@ const { createAppAuth } = require("@octokit/auth-app") const { graphql } = require("@octokit/graphql") // Local dependencies -const smeeClient = require(path.join(__dirname, "smee.js")) -const emojify = require(path.join(__dirname, "emojify.js")) -const hasCommand = require(path.join(__dirname, "command.js")) -const updateBodyMutationFor = require(path.join(__dirname, "mutations.js")) +const smeeClient = require("./smee") +const emojify = require("./emojify") +const hasCommand = require("./command") +const updateBodyMutationFor = require("./mutations") // Setup const port = 64897 const app = express() const privateKey = fs.readFileSync("gh-app.pem", "utf8") -const config = JSON.parse(fs.readFileSync("config.json", "utf8")) +const config = require('../config.json') var emojifierConfig = yaml.safeLoad(fs.readFileSync("emojifier-default.yml", "utf8")) const smee = smeeClient(config.webproxy_url, port) @@ -30,15 +29,16 @@ app.use(webhooks.middleware) webhooks.on(["issue_comment.created", "issues.opened", "pull_request.opened"], async (event) => { const { payload } = event - const auth = await createAppAuth({ + const auth = createAppAuth({ id: config.github_app_id, privateKey: privateKey, installationId: payload.installation.id }) + const { token } = await auth({ type: "installation" }); const graphqlWithAuth = graphql.defaults({ - request: { - hook: auth.hook + headers: { + authorization: `token ${token}` } })