When we run our build, it was failing in jasmine, in the part where it
was checking for rspec2. At the time we had rspec1 and rspec2 both
installed. We uninstalled rspec 2.6.0 from the gemset build, and it
was still failing. We then uninstalled rspec 2.6.0 from the gemset
cruisecontrol, and then the build went through.
Our build is not using bundler, but in its own directory we have an
.rvmrc containing the line "ree@build".
I wonder how the gemsets for ccrb and build interact -- the worrysome
sign is that rspec gem matters across both. Would it be limited to
rake and rspec? How do we know the build gemset is being respected
separately from ccrb's own cruisecontrol gemset?
-- Alexy
_______________________________________________
Cruisecontrolrb-users mailing list
Cruisecont...@rubyforge.org
http://rubyforge.org/mailman/listinfo/cruisecontrolrb-users
(Note that this response only applies to the master branch of CC.rb on Github)
CC.rb doesn't currently recognize or handle .rvmrc files. It uses
Ruby's "cd" mechanism to switch to your project's home directory,
which means that it bypasses RVM's mechanism for recognizing those
files on each directory change and handling them appropriately.
It does, however, handle Bundler. If you have a Gemfile installed it
will attempt to do the right thing to isolate your project to that
gemset. I recognize that this doesn't help you much.
For now, if you would like to use RVM on your build server you can
write a custom script that executes it for you, rather than relying on
CC.rb's Rake build functionality. A build shell script would run RVM
before attempting to run Rake. This path is less user-friendly at
first but you might find it gives you more power over your build in
the long run.
We've held off on RVM integration for two reasons: First, because if
you use Bundler it is reasonably easy for CC.rb to isolate your
application's gem dependencies without the use of RVM, so it's a lower
priority for us; and second, because I'm not familiar with RVM's API
or internals, and I'm not sure what, exactly, RVM integration should
look like once it's done. I'm guessing that for most people, "RVM
integration" means "detect and honor a .rvmrc file".
I've opened a feature request to track this:
https://github.com/thoughtworks/cruisecontrol.rb/issues/57. Feel free
to change the wording or add notes.
Patches that attempt to address this would be gratefully accepted.
Cheers,
Brian