0

我正在尝试使用 github 进行自动部署,我执行此 js 以使“服务器”从 github 接收钩子,效果惊人,但我需要执行脚本来下载存储库,但此代码不执行我的 hook.sh。我之前没有使用节点的经验,所以,我在这里迷路了。

// Listen on port 9001
var gith = require('gith').create( 9001 );
// Import execFile, to run our bash script
var execFile = require('child_process').execFile;

gith({
    repo: 'username/autodeploy'
}).on( 'all', function( payload ) {
    if( payload.branch === 'master' )
    {
            // Exec a shell script
            execFile('/root/nodeapp/hook.sh', function(error, stdout, stderr) {
                    // Log success in some manner
                    console.log( 'exec complete' );
            });
    }
});

好的,我正在手动测试这个,似乎问题出在 gith({.... 里面的所有东西都不起作用,有人知道吗?

谢谢大家

4

1 回答 1

1

好吧,问题出在

gith({
    repo: 'username/autodeploy'
}).on( 'all', function( payload ) {....

我把它改成了

gith({
    repo: 'username/autodeploy'
}).on( 'file:all', function( payload ) {....

这解决了我的问题。感谢@mscdex 和@alandarev 告诉我测试。

于 2014-07-27T07:25:04.670 回答