相关疑难解决方法(0)

Git WebHook(PHP)无法访问ruby环境,运行jekyll作为apache用户

post-merge我的git存储库中有一个挂钩,它只运行jekyll命令.

当我跑步时git pull,post-merge跑步没有问题.

但是,我已经设置了一个PHP文件,它将充当远程的WebHook:

$pull = `cd .. && git pull`;
echo $pull;
Run Code Online (Sandbox Code Playgroud)

当我访问此文件时,git pull运行(在一些初始问题之后)并且成功.但是,由于某种原因post-merge失败了.如果我查看我的Apache内部error_log,我发现以下错误:

.git/hooks/post-merge: line 5: jekyll: command not found

考虑到post-merge当我git pull通过SSH 做手册时成功运行jekyll ,这很奇怪.

如果我运行使用这里建议的可执行文件的完整路径,我在我的错误中收到此错误error_log:

/usr/bin/env: ruby_noexec_wrapper: No such file or directory

我通过RVM安装了Ruby.

如何让apache用户运行jekyll没有问题?

编辑:这是我目前的post-merge:

#!/bin/sh

unset GIT_DIR

source /usr/local/rvm/environments/ruby-1.9.3-p194

/usr/local/rvm/gems/ruby-1.9.3-p194/bin/jekyll

echo "Deployed!"
Run Code Online (Sandbox Code Playgroud)

当我以apache用户身份运行时,我现在收到此错误:

Node.js已安装.

apache git webhooks jekyll

7
推荐指数
1
解决办法
617
查看次数

env:ruby_noexec_wrapper:没有这样的文件或目录错误

运行此命令后,我经常收到此错误....

bundle clean --force
Run Code Online (Sandbox Code Playgroud)

在我的rails项目..

我怎样才能解决这个问题?

gem ruby-on-rails bundler

2
推荐指数
1
解决办法
2537
查看次数

标签 统计

apache ×1

bundler ×1

gem ×1

git ×1

jekyll ×1

ruby-on-rails ×1

webhooks ×1