Trove/integration-testing

= Testing with Trove and Redstack =

In order to fix network access issues for guest instances in Devstack, run:

'On reboot this will not be persisted unless you make it so in iptables. There are multiple ways to do that, so google to your hearts content'

$ sudo iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE

You can run the tests by:

$ ~/trove-integration/scripts/redstack int-tests

This runs all the black-box tests by default. You can run a different group of tests by using the group parameter.
 * You can run the simple tests by: $ ~/trove-integration/scripts/redstack int-tests --group simple

Cheat Code Test Environment Variables
If you have an instance you created by hand and want to use it with the tests you can use an 'environment variable' cheat code to use it in the tests.
 * TESTS_DO_NOT_DELETE_INSTANCE - Does not delete the instance at the end of the tests. This is helpful for debugging the instance or rerunning tests with the same instance multiple times.
 * TESTS_USE_INSTANCE_ID - Instead of creating a new instance for the tests it uses this instance. Useful if you have an instance and want the tests to run faster.

Usage:

$ TESTS_DO_NOT_DELETE_INSTANCE=True TESTS_USE_INSTANCE_ID=INSTANCE_UUID ~/trove-integration/scripts/redstack int-tests

Short circuiting tests
You can make the tests stop on the first failure by running (below). This is useful to diagnose an error early in the tests.

./redstack int-tests --group=blackbox --stop