Система Gitlab Webhook - PullRequest
       4

Система Gitlab Webhook

0 голосов
/ 18 февраля 2020

У меня один вопрос:

Мое приложение использует порт 1337 (я использовал в sails. js framework), и я должен написать систему webhook из gitlab. Я не нашел много руководств по «как написать систему webhook», но у меня есть следующий код:

const secret = "your_secret_here";
const repo = "~/your_repo_path_here/";

const http = require('http');
const crypto = require('crypto');
const exec = require('child_process').exec;

http.createServer(function (req, res) {
    req.on('data', function(chunk) {
        let sig = "sha1=" + crypto.createHmac('sha1', secret).update(chunk.toString()).digest('hex');

    if (req.headers['x-hub-signature'] == sig) {
        exec('cd ' + repo + ' && git pull');
    }
});

    res.end();
}).listen(8080);

Этот код использует порт 8080, и мой вопрос: как использовать этот код, но не на порт 8080, но в моем приложении порт 1337 ?, Как отредактировать этот код, чтобы он был правильной версией для парусов?

Спасибо за все ответы

1 Ответ

0 голосов
/ 18 февраля 2020

Вы создаете новый сервис, используя библиотеку Node's http. Он не будет работать на порте 1337, так как этот порт занят парусами.

Вам необходимо создать собственный маршрут в парусах, подробнее о том, как это сделать здесь , здесь и здесь . И это должно быть связано с действием , которое будет содержать фактический код, который обрабатывает веб-крючок.

...