Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to do bundle install using specific rvm gemset from git hook post-receive?

So, I'm trying to implement a heroku-like deployment without using capistrano. To check and install gems I'm trying to use git hook and put the following commands in /hooks/post-receive:

bundle check || bundle install

But when I run git push I get:

remote: hooks/post-receive: line 20: bundle: command not found. 

I understand that a hook probably launches commands from the wrong environment and somehow I have to switch rvm environment from hook. I tried to use rvm use 1.8.7@rails3 in post-receive but it didn't help. Any ideas?

like image 360
Arty Avatar asked May 29 '11 04:05

Arty


1 Answers

You might just have to make sure you source the user's environment at the top of the hook, for example:

$ source $HOME/.bash_profile # single user RVM setup
$ source /etc/profile        # multi user RVM setup
like image 151
Adam Sharp Avatar answered Oct 20 '22 20:10

Adam Sharp