I came across a post on the MediaTemple forums regarding the problem.
They lead me to this solution. I'd post the link but the forums are
pass protected. But here's the details...
The MediaTemple gem "mt-capistrano" that works in conjunction with
Capistrano is missing a path on its RUBYLIB var on line 4 of "mt-
capistrano.rb". It's missing ":/home/#{site}/data/rubygems/lib". Add
that string so that you now have "RUBYLIB=/home/#{site}/data/rubygems/
local/lib/site_ruby/1.8:/home/#{site}/data/rubygems/lib".
Now files that require 'rubygems' can find it.
What was really making things tricky was that apparently I have a
couple Ruby installs on my local OS X box. If not full installs, at
least three different directories of gems. Not sure how that is...need
read up on the topic still. At any rate, running "gem list" was
showing different gems than those I could see in the two gem
directories I had located. So making changes to "mt-capistrano.rb" in
the those mt-capistrano gem directories was not fixing my problem.
So I ran "find / -name mt-capistrano.rb" and finally found the gem
directory that was showing up when I ran "gem list". I edited its "mt-
capistrano.rb" and the problem was solved.
I had tried trouble shooting on the server side for a while before I
realized that the paths the server needs are passed in from the local
side. Please correct me if this is not accurate.
Thanks
On Feb 22, 5:46 pm, elliottg <[email protected]> wrote:
> I finally go it sorted. It did have to do with multiple local Ruby
> installs. I'll post specifics tomorrow.
> Thanks for the help.
>
> On 21 Feb, 21:46, elliottg <[email protected]> wrote:
>
> > I added the value of which gem __ /home/10838/data/rubygems/bin/
> > gem to Ruby's $LOAD_PATH in the irb
> > and still no luck. I'm stumped. Any thoughts?
>
> > irb(main):005:0> puts $LOAD_PATH
> > /home/10838/data/rubygems/bin/gem
> > /home/10838/data/rubygems/local/lib/site_ruby/1.8
> > /home/10838/data/rubygems/lib
> > /usr/local/lib/site_ruby/1.8
> > /usr/local/lib/site_ruby/1.8/i386-linux
> > /usr/local/lib/site_ruby
> > /usr/lib/ruby/1.8
> > /usr/lib/ruby/1.8/i386-linux
> > .
> > => nil
>
> > On 21 Feb, 19:48, elliottg <[email protected]> wrote:
>
> > > Looking inside __ /usr/bin I see these two ruby related lines.
>
> > > lrwxrwxrwx 1 root root 7 May 5 2008 ruby -> ruby1.8
> > > -rwxr-xr-x 1 root root 3504 Jan 14 2007 ruby1.8
>
> > > Is ruby -> ruby1.8 just a symlink or something? Does this look
> > > problematic?
>
> > > Thanks
>
> > > On 21 Feb, 12:41, elliottg <[email protected]> wrote:
>
> > > > which rake __ /home/10838/data/rubygems/gems/bin/rake
>
> > > > Heres the shebang line from __ /home/10838/data/rubygems/gems/bin/
> > > > rake __ #!/usr/bin/ruby
>
> > > > How can I find out if two Ruby installs are on there?
> > > > It's a shared server, I know I never installed Ruby myself or modified
> > > > anything, intentionally that is...
>
> > > > Thanks Jamis!
>
> > > > On 21 Feb, 11:52, Jamis Buck <[email protected]> wrote:
>
> > > > > What about "which rake"?
>
> > > > > If I had to guess, I'd say you've got at least two different ruby
> > > > > installations on that server, and the shebang line in whichever rake
> > > > > is
> > > > > being run is pointing to the OTHER ruby installation, the one the
> > > > > doesn't have rubygems installed.
>
> > > > > - Jamis
>
> > > > > On 2/21/09 9:48 AM, elliottg wrote:
>
> > > > > > Lee,
> > > > > > Here's the info. All server side...
>
> > > > > > which ruby __ /usr/bin/ruby
> > > > > > which gem __ /home/10838/data/rubygems/bin/gem
>
> > > > > > ruby -v __ ruby 1.8.5 (2006-08-25) [i386-linux]
> > > > > > gem -v __ 1.3.1
>
> > > > > > Again a further note: I was able to run rubygems-update but due to
> > > > > > permission restrictions was not able to run update_rubygems as well.
> > > > > > So I don't know if that somehow left me with an incomplete
> > > > > > install...?
>
> > > > > > Also, these lines are in .bash_profile just FYI
> > > > > > #MTSTART
> > > > > > export PATH=$PATH:/home/10838/data/rubygems/bin:/home/10838/data/
> > > > > > rubygems/gems/bin
> > > > > > export
> > > > > > RUBYLIB=/home/10838/data/rubygems/local/lib/site_ruby/1.8:/home/
> > > > > > 10838/data/rubygems/lib
> > > > > > export GEM_HOME=/home/10838/data/rubygems/gems
> > > > > > #MTEND
>
> > > > > > Thanks a lot!
>
> > > > > > On 21 Feb, 05:33, Lee Hambley <[email protected]> wrote:
> > > > > >> Elliot,
> > > > > >> Use 'pastie' for code snippets (pastie.org) - please run the
> > > > > >> following on
> > > > > >> your server:
>
> > > > > >> ruby -v
> > > > > >> gem -v
>
> > > > > >> which ruby
> > > > > >> which gem
>
> > > > > >> And give me the output from that...
>
> > > > > >> 2009/2/21 elliottg <[email protected]>
>
> > > > > >>> Lee.
> > > > > >>> Thanks for getting back to me.
> > > > > >>> I ran gem list on the server. Neither rubygems or rubygems-update
> > > > > >>> showed up.
> > > > > >>> Then I ran gem install rubygems-update it seemed to go as
> > > > > >>> planned...
> > > > > >>> Then based on what I read I thought I needed to run
> > > > > >>> update_rubygems as
> > > > > >>> well to complete the rubygems install and update. But when I ran
> > > > > >>> the
> > > > > >>> second line I got a read only permissions error. I'm sure it's
> > > > > >>> due to
> > > > > >>> the configs of my shared server...
> > > > > >>> After that just to see what I had, I ran gem --version and it
> > > > > >>> said
> > > > > >>> 1.3.1
> > > > > >>> So I can't really tell if rubygems is now installed and configured
> > > > > >>> correctly or not due to the fact that update_rubygems got killed
> > > > > >>> to
> > > > > >>> the pemissions issue. I guess I should have ran gem -v at the
> > > > > >>> beginning.
> > > > > >>> At any rate I still get the same "`require': no such file to load
> > > > > >>> --
> > > > > >>> rubygems " when running cap deploy:migrate
> > > > > >>> Any thoughts?
> > > > > >>> Thanks so much.
> > > > > >>> Elliott
> > > > > >>> P.S. Is there anyway to style text as code here?
> > > > > >>> On Feb 20, 6:39 pm, Lee Hambley <[email protected]> wrote:
> > > > > >>>> Elliot,
> > > > > >>>> Your server doesn't appear to have Rubygems installed. You can
> > > > > >>>> get, and
> > > > > >>>> install it from the rubygems site, installation really is a
> > > > > >>>> snap, give
> > > > > >>> that
> > > > > >>>> a shot (on your server) -- and post back here.
> > > > > >>>> - Lee
> > > > > >>>> 2009/2/20 elliottg <[email protected]>
> > > > > >>>>> Hello,
> > > > > >>>>> This is my first post here. I am new to Rails as well as
> > > > > >>>>> working in
> > > > > >>>>> Bash.
> > > > > >>>>> I am trying to deploy a Rails app that is frozen to v2.1.2 to a
> > > > > >>>>> MediaTemple gridserver. The app I'm deploying is the Redmine OS
> > > > > >>>>> project management program. The app runs fine on my OS X 10.5
> > > > > >>>>> machine
> > > > > >>>>> and mysql as the dev environment.
> > > > > >>>>> I went through this post:
> > > > > >>>>>http://groups.google.com/group/capistrano/browse_thread/thread/dde29b.
> > > > > >>> ..
> > > > > >>>>> As well as tons of Google searches and trying stuff out. Still,
> > > > > >>>>> I
> > > > > >>>>> couldn't solve the problem. On my MT shared server I don't root
> > > > > >>>>> access
> > > > > >>>>> or write access to .bashrc etc... beyond that, I am foggy on
> > > > > >>>>> what some
> > > > > >>>>> of my paths should even be and where to set them.
> > > > > >>>>> The cap deploy:set up worked fine. Then I ran cap deploy:cold,
> > > > > >>>>> all the
> > > > > >>>>> files went over fine from my git repo which is on the target
> > > > > >>>>> deploy
> > > > > >>>>> box. Below is the error I always get. I have the same problem
> > > > > >>>>> running
> > > > > >>>>> cap deploy:migrate as well.
> > > > > >>>>> * executing "cd /home/10838/containers/rails/redmine/releases/
> > > > > >>>>> 20090220170452;
> > > > > >>>>> PATH=$PATH:/home/10838/data/rubygems/bin:/home/10838/
> > > > > >>>>> data/rubygems/gems/bin
> > > > > >>>>> RUBYLIB=/home/10838/data/rubygems/local/lib/
> > > > > >>>>> site_ruby/1.8 GEM_HOME=/home/10838/data/rubygems/gems rake
> > > > > >>>>> RAILS_ENV=production db:migrate"
> > > > > >>>>> servers: ["simplecircle.net"]
> > > > > >>>>> [simplecircle.net] executing command
> > > > > >>>>> *** [err :: simplecircle.net]
> > > > > >>>>> /home/10838/data/rubygems/gems/bin/rake:
> > > > > >>>>> 9:in `require': no such file to load -- rubygems (LoadError)
> > > > > >>>>> *** [err :: simplecircle.net] from
> > > > > >>>>> /home/10838/data/rubygems/gems/bin/
> > > > > >>>>> rake:9
> > > > > >>>>> command finished
> > > > > >>>>> failed: "sh -c \"cd
> > > > > >>>>> /home/10838/containers/rails/redmine/releases/
> > > > > >>>>> 20090220170452;
> > > > > >>>>> PATH=\\$PATH:/home/10838/data/rubygems/bin:/home/10838/
> > > > > >>>>> data/rubygems/gems/bin
> > > > > >>>>> RUBYLIB=/home/10838/data/rubygems/local/lib/
> > > > > >>>>> site_ruby/1.8 GEM_HOME=/home/10838/data/rubygems/gems rake
> > > > > >>>>> RAILS_ENV=production db:migrate\"" on simplecircle.net
> > > > > >>>>> And here's my deploy.rb
> > > > > >>>>> NOTE: I tried some setting default_run_options[:env] values in
> > > > > >>>>> deploy.rb but to no effect. you can see them commented out. I
> > > > > >>>>> am not
> > > > > >>>>> sure if those two path are even correct.
> > > > > >>>>> require 'mt-capistrano'
> > > > > >>>>> set :site, "10838"
> > > > > >>>>> set :application, "redmine"
> > > > > >>>>> set :webpath, "projects.simplecircle.net"
> > > > > >>>>> set :domain, "simplecircle.net"
> > > > > >>>>> set :user, "[email protected]"
> > > > > >>>>> set :password, "monkey75"
> > > > > >>>>> # default_run_options[:env] = { "PATH" =>
> > > > > >>>>> "$PATH:/home/10838/data/
> > > > > >>>>> rubygems/bin:/home/10838/data/rubygems/gems/bin",
> > > > > >>>>> # "RUBYLIB" => "/home/10838/data/
> > > > > >>>>> rubygems/local/lib/site_ruby/1.8:/home/10838/data/rubygems/lib"}
> > > > > >>>>> set :scm, :git
> > > > > >>>>> set :repository, "http://git.simplecircle.net/redmine.git"
> > > > > >>>>> set :deploy_to, "/home/#{site}/containers/rails/#{application}"
> > > > > >>>>> set :rails_env, "production"
> > > > > >>>>> set :use_sudo, false
> > > > > >>>>> role :web, "#{domain}"
> > > > > >>>>> role :app, "#{domain}"
> > > > > >>>>> role :db, "#{domain}", :primary => true
> > > > > >>>>> THANKS for helping me out here.
--~--~---------~--~----~------------~-------~--~----~
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at http://groups.google.com/group/capistrano
-~----------~----~----~----~------~----~------~--~---