1

GitHub Webhook と node.js を使用して自動コード プル サービスを構築しようとしています。昨日このコードを実行したとき、それは魅力的に機能し、適切なリポジトリを適切なフォルダーにプルしましたが、今日は静かに失敗し始めました. 私の開発マシンで動作します。

タイルに記載されているように、IISNode を使用して IIS で実行していますが、IIS なしでホストする必要があるかどうか疑問に思い始めています。これは私が書いたコードです。

var exec    =   require('child_process').exec,
http    =   require('http'),
path    =   require('path'),
config  =   require('./config'),
server  =   http.createServer(function(req, res) {

var incomingData = '';

req.on('data', function(data) {
    incomingData += data;
});

req.on('end', function() {
    incomingData = JSON.parse(incomingData);
    var repoName = incomingData.repository.name;
    var pullPath = path.resolve('..', repoName);

    console.log(pullPath);
    var body = "<html><body>stdout: ";
    exec('cd ' + pullPath + ' && git pull', function (error, stdout, stderr) {
        if( error !== null ){
            console.log(error);
        }

        console.log("stdout: " + stdout);
        console.log("stderr: " + stderr);
        body += stdout;
    });
    body += "</body></html>";

        res.writeHead(200, {
          'Content-Length': body.length,
          'Content-Type': 'text/plain' });
        res.write(body, 'utf8');
        res.end();
    });
}).listen(config.web.port);

なぜこれが突然機能しなくなったのですか?

編集: issnode の github ページで問題を公開しました。https://github.com/tjanczuk/iisnode/issues/352

edit2: デバッグ情報を追加 http://tjanczuk.github.io/iisnode/iisnode-debug.html#iisnode_ver=0.2.11&node=node.exe&dns=DNS&worker_pid=600&node_pid=1200&worker_mem_ws=11072&worker_mem_pagefile=4728&node_mem_ws=12820&node_mem_process2=req_process2=req_page=1 1&app_active_req=1&worker_total_req=1&np_retry=1&req_time=0&hresult=0

edi3: .../app.js/debug/ に行くのに問題があるようですが、タイトルを取得しますが、サーバーからの応答を永遠に待っているようです。

4

1 に答える 1