Rainbow/Testing

From OLPC
< Rainbow
Revision as of 19:42, 12 June 2009 by Mstone (talk | contribs) (New page: == Testing == Rainbow is easy to test in chroots, for example, those created by [http://fedoraproject.org/wiki/Projects/Mock mock]. See [http://dev.laptop.org/git/users/mstone/test-ra...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Testing

Rainbow is easy to test in chroots, for example, those created by mock. See test-rainbow and, in particular,this small multi-user test script.

To test it on a regular system, you might install it, then run something like:

 sudo rainbow-easy gaming /bin/bash
 sudo rainbow-easy banking /usr/bin/firefox -no-remote
 sudo rainbow-easy av /usr/bin/mplayer ~/some/movie

These examples will drop you into an isolated bash session, firefox session, or mplayer session in which you can play.

NB: If you want to isolate more complicated software, then you're going to use the low-level rainbow-run interface used by rainbow-easy. Here are some examples to help you get started:

 Launch mplayer with a fresh nested Xephyr X server. 
 sudo rainbow-run -v -v -v -s /var/spool/rainbow/2 -u $USER -c "`pwd`" -f 0 -f 1 -f 2 -E "DISPLAY=:0" -o audio -a /usr/bin/rainbow-xify -o xephyr -- /usr/bin/mplayer ~/some/movie
 Launch bash in a previously generated container.
 sudo rainbow-run -v -v -v -s /var/spool/rainbow/2 -u $USER -f 0 -f 1 -f 2 -i secrets -r 10000 -- /bin/bash
 

Obviously, please contribute more automated tests, helpers, and bug reports!