Windows 7, RM 6, Vagrant, Zeus, rspec

Hey,
I'm really close to making this work. I got zeus to run from RM(you have to put ZEUSSOCK=/tmp/zeus.sock in the environment variable to be able to start it). But when I make a RSpec configuration, RM tries to start zeus from the local machine and not from vagrant:

/home/vagrant/.rbenv/versions/2.0.0-p247/bin/ruby -C'/vagrant' -e '$stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)'
"C:/Users/Nikolay/.RubyMine50/system/ruby_stubs/519092644/1850925767/zeus" rspec /vagrant/spec --require teamcity/spec/runner/formatter/teamcity/formatter --format Spec::Runner::Formatter::TeamcityFormatter --pattern **/*_spec.rb
Testing started at 12:43 AM ...
-e:1:in `load': cannot load such file -- C:/Users/Nikolay/.RubyMine50/system/ruby_stubs/519092644/1850925767/zeus (LoadError)
 from -e:1:in `<main>'

I have to somehow tell the RSpec configuration to run the vagrant zeus. Any hints?

Thanks for the help!
Regards,
Nikolay

8 comments
Comment actions Permalink

This is a bug in our code :(
I've filed ticket for it - http://youtrack.jetbrains.com/issue/RUBY-14638
Hope it will be fixed in 6.0.1

Regards, Oleg.

0
Comment actions Permalink

Sorry to hear that, I hope the fix will be out with the next release :)

Thanks for the info.
Nikolay

0
Comment actions Permalink

Hey Oleg,
I updated to the new RubyMine version 6.0.1 which should have fixed the problem.
My experience with vagrant is that I cannot just type "zeus start" there and have zeus running. It always gives "It looks like Zeus is already running. If not, remove .zeus.sock and try again.". The only way to start zeus on vagrant is this:

ZEUSSOCK=/tmp/zeus.sock zeus start (https://github.com/burke/zeus/issues/287)

by configuring the socket location. And then in another console I have to use zeus like this:

ZEUSSOCK=/tmp/zeus.sock zeus test
to run my tests.

In RM I managed to get zeus running by adding the "ZEUSSOCK=/tmp/zeus.sock" to the environment variables. However when I try to run the zeus test I just get that "Test framework quit unexpectedly" without any other message. I think the environment variables are the issue.

The other thing that I found is that when I run zeus from RM and then press the stop button the processes keep on living, it does not stop it properly. I have to login to vagrant and manually kill all the zeus processes.

If you have any other questions, don't hesitate to ask.

Thank you for your support!
Nikolay

0
Comment actions Permalink

I've not see problem with running test with Zeus on Vagrant, will try it today.
As for problem with killing Zeus it looks like http://youtrack.jetbrains.com/issue/RUBY-14552.

Oleg.

0
Comment actions Permalink

Yes, I see the same problem and setting ZEUSSOCK helps.
I'd suggest to modify default template for test/rspec/cucumber run configurations to add this variable.

Regards, Oleg.

P.S. since this is Zeus problem I'd suggest to file bug agains it.

0
Comment actions Permalink

Thanks Oleg,
can you let me know in which RM version I should expect that change?

0
Comment actions Permalink

What change?  I've suggested you to change default run configuration for your project (Run|Edit Configurations..|Defaults select the config you need)
I do not think we should change RubyMine to workaround bug in Zeus, also we can not detect if you use vagrant and select file name w/o user's help.

Regards, Oleg.

0
Comment actions Permalink

Sorry, I must have misunderstood you, when I changed the default rspec configuration to include ZEUSSOCK as an environmental variable it worked.
Now only this http://youtrack.jetbrains.com/issue/RUBY-14552 is left and we're all set.

0

Please sign in to leave a comment.