Add basic sphinx docs setup with some rudimentary information
on how to use gabbi-tempest. This isn't perfect but provides
the basics for future improvement.
A docs template is added to .zuul.yaml.
Change-Id: If2631d92366866ba6bd149909ece17734931ae91
The name follows the patterns defined by zuul docs.
The Depends-On is to a necessary Tempest change for
handling the enviornment variable.
The gabbigts in gate/gabbits talk to keystone and nova
to simply confirm that the tests can run.
Depends-On: https://review.openstack.org/607507
Change-Id: I7a9efefb28e23bf47951617cbe08f177235688d6
In this way the plugin becomes generic: point it at some directories
that contain gabbi YAML files that use the provided environment
variables (see the README.rst), what them run.
One concern that will need to be address is dealing with parallelism:
tempest doesn't make it easy to manipulate the group_regex.
We resize, wait for VERIFY_RESIZE, look for doubled-up allocations
and usage, then confirm the resize, and look for expected allocations.
We don't get the doubled up allocations.
Move around some ENVIRON so that we always have the expected
values in the tests (it's cheap so why not?).
multi/base.yaml tries to take advantage of YAML anchors to avoid
repeating some of the longer substitutions[1] but I'm not sure if it
is going to be the right thing.
Next: do a resize.
[1] https://gabbi.readthedocs.io/en/latest/format.html#substitution
multi/base.yaml looks at both the compute and placement services,
confirming that the one hypervisor that exists has a resource
provider with inventory with a proper allocation ratio for VCPU.
It turns out that each of the <TYPE>_SERVICE ENVIRON variables also
needs a <TYPE>_BASE otherwise it can be hard to reconstruct URLs
using links in respones. Sometimes they are full hosts. Sometimes
they are absolute URLs. Neither of this can be appended to a fully
qualified endpoint.
Previously, the host was the endpoint of the service being tested.
This is limiting if what's really desired is testing multiple
services. So now we move towards setting environmen variable that
are the endpoints for any of the services that are going to be used.
Then these can be made available from any test.
Right now it is not like that. Right now it builds environments
based on the requested types. Better to just set them all and then
allow the host either be a primary service type endpoint, or a stub
if it really is going to be lots.
Committing now because tests are mostly passing (except for the
phantom failures). Cleanup to come.
Subclass of the generic class determine the service_type and
service_name to be tested. The service_type drives the location of
the gabbits. Note that nothing prevents loading gabbits from
somewhere else and having multiple service types at play, this
change is just a way to clarify options.
The compute tests are moved into their own directory and some
glance/image tests are added.
This is entirely the result of @sileht, who got things working for
gnocchi.
The end game here is a generic way to have a suite of YAML files
sitting around somewhere and run them, via tempest, and for it
to just work. This is currently some distance away from that
(because I got distracted finding nova bugs).