Eu consegui descobrir isso. Eu postei a resposta para minha pergunta no SO. Espero que ajude!
I was able to figure this out. First, I installed rvm as a multi-user installation to ensure the
www-dataaccount can access it.$ curl -sSL https://get.rvm.io | sudo bash -s stableInstall the desired ruby version, in my case 2.3.1, then set rvm to use it:
$ rvm install 2.3.1 $ rvm use 2.3.1Run
gemto install any gems that are needed. Because rvm is a multi-user installation, these gems are stored to the system and not your specific user.$ gem install packagenameI don't know if this is necessary, but I would close the SSH session and reopen it. rvm messes with environment variables, so better safe than sorry.
Run
envto print all environment variables.printenvalso works ifenvdoesn't for some reason. You'll get a big list of everything set, you only need the ruby-related ones. Do not copy/paste these values, they are examples I pulled from my system. Yours will be different!PATH=/usr/local/rvm/gems/ruby-2.3.1/bin:/usr/local/rvm/gems/ruby-2.3.1@global/bin:/usr/local/rvm/rubies/ruby-2.3.1/bin:/usr/local/rvm/bin:/home/steven/bin:/home/steven/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin rvm_bin_path=/usr/local/rvm/bin GEM_HOME=/usr/local/rvm/gems/ruby-2.3.1 IRBRC=/usr/local/rvm/rubies/ruby-2.3.1/.irbrc MY_RUBY_HOME=/usr/local/rvm/rubies/ruby-2.3.1 rvm_path=/usr/local/rvm rvm_prefix=/usr/local rvm_ruby_string=ruby-2.3.1 GEM_PATH=/usr/local/rvm/gems/ruby-2.3.1:/usr/local/rvm/gems/ruby-2.3.1@global RUBY_VERSION=ruby-2.3.1Now we need PHP to recognize these variables. You'll need to find the right file on your system, which can be tricky. I don't have a way of knowing which one is correct, I used trial and error.
The file on my system is
/etc/php/5.6/fpm/pool.d/www.conf. Add all of the environment variables you previously grabbed into this file with the below format. Note that you DO needPATHin here as well!env[rvm_path] = /usr/local/rvm env[rvm_prefix] = /usr/localNow restart
php-fpm. Your service name may be different from mine; I'm using the 5.6 build from ondrej/php.Ubuntu 15.04 and newer (systemd):
$ sudo systemctl restart php5.6-fpmUbuntu 14.10 and newer:
$ sudo service php5.6-fpm restartFinally, in the script itself you'll need to
cdto the directory you're running thebundlecommand from. My short script is this:cd /opt/slate /usr/bin/git reset --hard /usr/bin/git pull bundle exec middleman build --clean cp -R /opt/slate/build/* /var/www/docsWorks for me!