ec2-api/ec2api/tests/functional/api
Feodor Tersin 8282371da4 Get rid of Nova DB access
Important features:
- Nova client with microversion support is required.
- Nova API server may not support microversion 2.3 (not tested).
- Attaching volumes are not displayed in an instance bdm. Because Cinder
volume doesn't yet contain attachment info (which contains a device
name), and Nova instance volumes_attached doesn't contain a device name
(mountpoint). But a bdm must contain it.

Other features:
- v2.3 is requested always
- RunInstance result is formatted w/o extra v2.3 info, so it doesn't
contain rootDeviceName and other such info
- if rootDeviceName property is empty it's omitted instead of
to report fake /dev/sda1 as Nova EC2 does it. This leads to omit
rootDeviceType property in this case as well.
Also the same is done for corresponding image's properties.
- deleteOnTermination volume property is omitted for volume at all, and
for instance bdm if Nova doesn't report it. Previously this volume
property contained 'False' only.
- DescribeVolumes isn't used in DescribeInstances (as opposed to
DescribeNetworkInterfaces), because both methods require actual state
of corresponding OS objects, so we prevent duplication of OS requests.
- Not merged Nova client is used
https://review.openstack.org/#/c/152569/

Also:
- fix multi-run instances for EC2 Classic mode
- safe getting of OS instance security groups
- ec2context module alias is renamed to ec2_context, as it is in other
code
- fakes.CinderVolume is renamed to local standard OSVolume
- fakes.OSInstance it transformed to be initialized from a dictionary,
as it is for other fakes.OSXxx objects
- fix code style

Depends-On: Icf2b9739aaf87b4c9af13ad64a310081a68f776e
Change-Id: Id65ea0f56ffd889286d5ca082e1daf2643205c52
2015-03-20 15:33:05 +03:00
..
__init__.py add first functional test with infrastructure 2015-02-08 10:16:48 +03:00
test_addresses.py rework TODO due to new tempest_lib 2015-02-25 20:07:02 +03:00
test_dhcp_options.py rework TODO due to new tempest_lib 2015-02-25 20:07:02 +03:00
test_images.py Fix Image RootDeviceType detection for bdm v2 2015-02-21 09:38:41 +03:00
test_instances.py add test for idempotent instance 2015-03-05 16:42:06 +03:00
test_instances_ebs.py rework TODO due to new tempest_lib 2015-02-25 20:07:02 +03:00
test_instances_vpc.py Enable a functional test on DeviceIndex==0 2015-03-01 12:32:22 +03:00
test_internet_gateways.py rework TODO due to new tempest_lib 2015-02-25 20:07:02 +03:00
test_key_pairs.py add first functional test with infrastructure 2015-02-08 10:16:48 +03:00
test_network_interfaces.py Enable a functional test on DeviceIndex==0 2015-03-01 12:32:22 +03:00
test_regions.py Add rest of api tests. 2015-02-10 21:28:31 +03:00
test_routes.py rework TODO due to new tempest_lib 2015-02-25 20:07:02 +03:00
test_security_groups.py rework TODO due to new tempest_lib 2015-02-25 20:07:02 +03:00
test_snapshots.py add tests for various cases with instance 2015-02-17 22:49:35 +03:00
test_subnets.py Get rid of Nova DB access 2015-03-20 15:33:05 +03:00
test_tags.py create tags' tests 2015-03-05 09:35:39 +03:00
test_volumes.py Get rid of Nova DB access 2015-03-20 15:33:05 +03:00
test_vpcs.py Reworked mechanism of disabling VPC tests 2015-02-11 22:16:15 +03:00