Hey folks,

As part of
    
https://github.com/schubergphilis/cloudstack/tree/feature/systemvm-persistent-config

We tried using chef [1] solo as a convergence tool [2] for systemvm config 
changes, and along with that serverspec [3] for testing, which is pretty 
standard practice while using chef.

But, chef_solo is turning out to perhaps be a bit slow for systemvm use, so Ian 
is now creating a lighter weight convergence tool with python. I imagine it 
should go down well here since we have so much python already :)

In line with that I looked for a python-based serverspec alternative and found 
‘envassert’, which seems to work Just Fine(tm). Yesterday I got all the bits 
properly hooked up to my IDE [4], our internal jenkins [5], and Ian’s vi [6]; 
I’m pretty happy with this setup now; so we plan to start writing serious 
amounts of tests from today.

The two big changes are

https://github.com/schubergphilis/cloudstack/commit/1eac9925380e91f47aed528025996b89214055bf
https://github.com/schubergphilis/cloudstack/commit/4347e098931895117ed568c2a46950bce6b3a046#diff-10

Any comments?


cheers,


Leo

[1] http://www.getchef.com/
[2] http://controlofsystems.org/febid2006/files/control-cfengine.pdf
[3] http://serverspec.org/
[4] http://i.imgur.com/c1XjyXW.png
[5] basically it’s invoking
    
https://github.com/schubergphilis/cloudstack/blob/feature/systemvm-persistent-config
        /tools/vagrant/systemvm/test.sh
    and then parsing the xunit.xml that comes out of nose
[6] that one was particularly difficult :)

Reply via email to