Add duplicate bug detection to skip_tracker.py

Previously, if a tempest test was skipped because of a bug that
was marked a duplicate of another bug the skip tracker would not
check the status of the duplicate bug. This would cause fixed bugs
from being shown up in the list, because the original bug's status
is not necessarily updated if it is marked as a duplicate.

This commit fixes this behavior by checking if there is a duplicate
bug first. Then after all the bugs' statuses are checked the list of
duplicate bugs is checked. If a duplicate bug is marked as fixed the
original bug is added to list of bugs that is safe to unskip.

Change-Id: Ia1aaec9e01a97556d17b0640a95e03f0f0b37680
Switch to final 1.1.0 oslo.config release

Fixes bug #1128256

oslo.config has now been released to PyPI in time for Grizzly RC1 so
we can switch to using it directly.

Change-Id: I3bfd60ea7e34feebd8b26c7a4793695dcb77bbba
add find_stack_traces tool

this is useful to go and collect all the stack traces found for a
particular test run. Helps us easily identify when stack traces
are being generated even on good runs.

Change-Id: Ia5b95be7bc1a425630fba06c7c65cbaa9fa7079f
Replace try/except/else with self.assertRaises.

Blueprint update-expected-exception-tests.

Change-Id: I2eab6cbc349814526f5610dc7dfb9cf5414cc885
Disable test_rescued_vm_attach_volume

To fix bug 1126187, we are forbidding attach/detach in rescue mode.
Which test_rescued_vm_attach_volume explicitly checks for.

Change-Id: I745ccb9c7bc763809efd617eadfe5fd2fab1cb48
Merge "Replace try/except/else with self.assertRaises."
Add a test to list the security group rules

* Create two rules for the security group.
* List the rules, there are created in the security group.

Fixes bug 1145626

Change-Id: I04924651cf904a9346f6ed31308a60d4c8a17f74
Convert try/expect/else as per new Tempest style.

Test Modified: test_create_server_when_memory_quota_is_full.

Modifications:
As per new Tempest style guidelines, convert "try/expect/else"
statements into "assertRaises".

In order to ensure that other tests remain unaffected
because of this change, replace "finally" with "addCleanup".

Blueprint update-expected-exception-tests.

Change-Id: I5a4da788fcf8269d87e1d1e5c30bc8fdbef83aec
Add base classes for image tests.

This commit breaks out common functionality from the image test class
an moves it into a set of base classes. The base class also abstracts
out the create_image call and adds resource tracking. This way each
individual test class doesn't have to worry about cleaning up images
created for tests.

Change-Id: I55818f2565652cfffad5a66f44e1c7f81d73c5cf
xml_to_json should not convert xmlns into attribute

We should not treat xmlns as json payload.

Fixes LP# 1152630

Change-Id: Ib30759d0b6782b70356b4aa057227c01a2306fee
Add api version detection support to glance tests.

This commit adds support for detecting the api versions supported
by glance. The list of versions is aquired by making a GET
request on the glance endpoint.

A new get_versions method is added to rest_client which will make
a GET call on the base_url of the RestClient object. The method
parses the response from the api call to get the list of
versions. A check is then added to the base test classes to ensure
the api version being tested is in the list of supported api
versions.

Change-Id: If60bb509bc1b2c7ea514066d12e0a03a41308368
Remove unnecessary asserts from test_images.py

This commit removes unnecessary assertTrue()s from the tests in
CreateRegisterImagesTest test class in
tempest.tests.image.v1.test_images. The asserts were being used to
verify a particular field in the response, however this isn't
needed, because get() will throw an error if the key is invalid.
Additionally, for those types of test assertIn() should be used
instead of assertTrue(), but since they are unnecessary the asserts
are just removed.

Change-Id: I3bd24d48eb9bbc11f39d8077d1e823b10e34c6d9
Merge "xml_to_json should not convert xmlns into attribute"
Merge "Add base classes for image tests."
Merge "Disable test_rescued_vm_attach_volume"
Merge "Add api version detection support to glance tests."
Merge "Remove unnecessary asserts from test_images.py"
Fix skip formats to trigger skip_tracker.

Skip tracker looks for 'bug' or 'Bug' not 'BUG'

Change-Id: Ia54942bdac73f1491c99b073610302507e2b358e
Fix exception name in test_server_actions

"exceptions" used instead of Exception.

Change-Id: Ifdbd7608fba671ee603d35091dd33416c579c2bd
Merge "Add duplicate bug detection to skip_tracker.py"