On 03/07/2013 03:32 PM, David Lutterkort wrote: > On Thu, 2013-03-07 at 14:23 -0500, jvlcek wrote: >> The latest bits seem to run fine. See the attached. > What RUby version do you use ? Can you send me your Gemfile.lock ?
keelhaul % ruby -v ruby 1.9.3p385 (2013-02-06 revision 39114) [x86_64-linux] Gemfile.lock attached. > >> I believe the issue is the patch: >> 0001-RHEVM-tests-have-VCR-match-only-on-path-and-query-no.path >> the match_request_on is not needed. > No, it is very much needed - without restricting the matching, I get > even more test failures. OK using your patches sure but have you tried using a clean branch == to what's currently in master? I even pulled a new clone of the repo and the test run fine for me. > > It's also not logical that we'd want to match on hostname for RHEV-M. As > far as the tests are concerned, the host names do not matter. OK. This is good. If we can limit the matching and still have viable tests the whole mess becomes much cleaner... as you elude to with your patches. > >> I've discussed the leaking information issue with Michal and Marios. >> >> For all future recordings the approach is to use ~/.deltacloud/config to >> do the recordings. >> Then to set the user and pass to fakeuser and fakepassword in the >> recorded fixtures YAML >> files after doing the recording. Which is much easier to do than it sounds. > Have you tried out the second patch I sent ? It should do that without > any sed magic. I have not but I will and I agree, in reading the patch, that it will avoid the sed magic step nicely.. I also suggest using fakeuser:fakepassword vs admin:secret since the latter is more realistic and quite possibly actual. > >> This will match the returns from the credentials and driver methods in >> tests/test_helper.rb > With the changes to match_request_on I sent you, it doesn't matter at > all what credentials are used during playback - which is what we want. Sure. And I agree with the "match" approach since you point out the tests will not be compromised. I had actually tried that but hit the 2 errors you are so avoided it to help avoid unnecessary re-recordings. I understand now, and admit, it would have been better to do the rerecording. > > It seems to be indeed the case that having a ~/.deltacloud/config during > playback causes the test failures. I want to get to a point where tests > pass even if that file exists. Changes to methods credentials() and driver() in tests/test_helper.rb could do that. Currently they use for the ~/.deltacloud/config content if found. Your idea of having an "RE-RECORD" environment variable is a good one and could be leveraged here too. > >> For existing recordings the credentials on the cloud providers are to be >> changed so they >> do not match those that had been used during the recording. This does >> leave some UUID >> information for the most part are ephemeral. > I don't care about leaking UUID, but we do have a good amount of real > user info and hostnames in the recordings right now. The user info should be handled by changing the creds on the test systems so they don't match the history in our repo. The hostnames are an issue but it's not clear to me how much of one if they creds are not valid. No doubt moving forward we should avoid recording this info but it's out there on our repo and the history of the repo will show it. So changing the creds will help plug the biggest holes. > > David > > I'd be glad to take on addressing these issues. Joe
PATH remote: . specs: deltacloud-core (1.1.1) aws (>= 2.7.0) cloudfiles cloudservers excon (>= 0.14.2, < 0.17.0) fog (>= 1.4.0) haml (>= 2.2.17) json_pure (>= 1.5.0) net-ssh (>= 2.0.0) nokogiri (>= 1.4.3) openstack (>= 1.0.9) rack (>= 1.0.0) rack-accept rake (>= 0.8.7) rbovirt (>= 0.0.17) rbvmomi rest-client savon (>= 1.0.0) sequel (<= 3.42.0) sinatra (>= 1.3.0) sinatra-rabbit (>= 1.1.6) sqlite3 thin (>= 1.2.5) uuidtools (>= 2.1.1) waz-storage (>= 1.1.0) GEM remote: http://rubygems.org/ specs: addressable (2.3.3) akami (1.2.0) gyoku (>= 0.4.0) nokogiri (>= 1.4.0) ansi (1.4.3) aws (2.8.0) http_connection http_connection uuidtools uuidtools xml-simple xml-simple builder (3.2.0) cloudfiles (1.5.0.1) json cloudservers (0.4.2) json crack (0.3.2) daemons (1.1.9) eventmachine (1.0.1) excon (0.16.10) fog (1.10.0) builder excon (~> 0.14) formatador (~> 0.2.0) mime-types multi_json (~> 1.0) net-scp (~> 1.1) net-ssh (>= 2.1.3) nokogiri (~> 1.5.0) ruby-hmac formatador (0.2.4) gyoku (1.0.0) builder (>= 2.1.2) haml (4.0.0) tilt hashie (2.0.2) http_connection (1.4.4) httpi (2.0.2) rack json (1.7.7) json_pure (1.7.7) mime-types (1.21) minitest (4.6.2) minitest-reporters (0.14.7) ansi builder minitest (>= 2.12, < 5.0) powerbar multi_json (1.6.1) net-scp (1.1.0) net-ssh (>= 2.6.5) net-ssh (2.6.6) nokogiri (1.5.6) nori (2.0.4) openstack (1.0.9) json powerbar (1.0.11) ansi (~> 1.4.0) hashie (>= 1.1.0) rack (1.5.2) rack-accept (0.4.5) rack (>= 0.4) rack-protection (1.4.0) rack rack-test (0.6.2) rack (>= 1.0) rake (10.0.3) rbovirt (0.0.18) nokogiri rest-client rbvmomi (1.6.0) builder nokogiri (>= 1.4.1) trollop rest-client (1.6.7) mime-types (>= 1.16) ruby-hmac (0.4.0) savon (2.1.0) akami (~> 1.2.0) builder (>= 2.1.2) gyoku (~> 1.0.0) httpi (~> 2.0.2) nokogiri (>= 1.4.0) nori (~> 2.0.3) wasabi (~> 3.0.0) sequel (3.42.0) simplecov (0.7.1) multi_json (~> 1.0) simplecov-html (~> 0.7.1) simplecov-html (0.7.1) sinatra (1.3.5) rack (~> 1.4) rack-protection (~> 1.3) tilt (~> 1.3, >= 1.3.3) sinatra-rabbit (1.1.6) sinatra (>= 1.3.0) sqlite3 (1.3.7) thin (1.5.0) daemons (>= 1.0.9) eventmachine (>= 0.12.6) rack (>= 1.0.0) tilt (1.3.3) trollop (2.0) turn (0.9.6) ansi uuidtools (2.1.3) vcr (2.4.0) wasabi (3.0.0) httpi (~> 2.0) nokogiri (>= 1.4.0) waz-storage (1.3.2) rest-client ruby-hmac webmock (1.9.3) addressable (>= 2.2.7) crack (>= 0.3.2) xml-simple (1.1.2) PLATFORMS ruby DEPENDENCIES aws deltacloud-core! jruby-openssl minitest minitest-reporters puma rack-test simplecov tilt (= 1.3.3) turn vcr webmock (< 1.10)