繁体   English   中英

无法运行Ruby脚本从github进行git pull

[英]Unable to run ruby script to git pull from github

我在Ubuntu 14.04实例中运行着Rails服务器,并将代码托管在github.com中。 为了将用户推送到github,我为我的应用设置了一个Webhook,它监听来自github的所有POST调用,并在POST具有所有正确的有效负载时尝试执行ruby脚本gitscript.rb。

不幸的是,脚本没有执行git pull,我被困以完美地运行它。 任何帮助,将不胜感激。

下面是我的代码,用于侦听Webhook并运行脚本,但是脚本中的命令无法运行,我拥有ruby脚本所需的所有权限。

def webhooks
    push = JSON.parse(request.body.read)
    if some_condition_that_should_be_true
      logger.info "Yes go ahead and pull"
      logger.info "Ran the git pull command" if `cd /home/server && git pull >> cat.txt`
      logger.info "Ran the ruby" if `ruby /home/server/gitscript.rb`
      logger.info "Last command"
    else
      logger.info push
    end
    render :json => { :code => 'Webhooks came good' }, :status => 200
  end

我的ruby脚本在下面,是的,它的所有权限都是正确的,为了测试,我将它们设为777

!/bin/env ruby
cd /home/server && git pull

运行您的脚本的用户可能不具有git存储库上的读/写权限(此处不是在谈论权限,而是更多关于deploy-keys ,它们只是SSH密钥,允许用户从远程git读取和/或写入远程git回购)。

您能以在服务器上运行此脚本的用户身份git pull吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM