nova/nova/tests/scheduler
Sandy Walsh d8e1b8f210 flatten distributed scheduler
This branch removes AbstractScheduler, BaseScheduler and LeastCostScheduler
and replaces it with DistributedScheduler. Now the points of extension are
handled via the --default_host_filters and --least_cost_functions only.

Also, greatly simplified the zone handling logic in DistibutedScheduler, mostly
by removing the cryptic dicts with helper classes.

Fixed up the Least Cost functions to better deal with multiple functions.
(In a followup patch I will removed the normalization that occurs as this will
be a problem).

Tests were mostly rewritten to support this new world order.

Debated removing JSONFilter since it's not accessible from the outside world,
but decided to keep it as there are discussions afoot on making scheduler
changes without having to redeploy code or restart services.

HostFilters once again get the all the host service capabilities, but now
via a HostInfo class that mostly contains read-only dicts of capabilities.

Virtual resource consumption is done in the DistributedScheduler class now.
The filters/weighing functions don't need to worry about this. Also, weighing
functions only have to return a single host and not worry about the number of
instances requested.

Change-Id: I92600a4a9c58b1add775c328a18d8f48c305861e
2011-11-01 04:28:34 -07:00
..
__init__.py Make sure test setup is run for subdirectories 2011-06-29 11:00:37 -07:00
fake_zone_manager.py flatten distributed scheduler 2011-11-01 04:28:34 -07:00
test_distributed_scheduler.py flatten distributed scheduler 2011-11-01 04:28:34 -07:00
test_host_filter.py flatten distributed scheduler 2011-11-01 04:28:34 -07:00
test_least_cost.py flatten distributed scheduler 2011-11-01 04:28:34 -07:00
test_scheduler.py Creating uuid -> id mapping for S3 Image Service 2011-10-31 13:56:03 -04:00
test_vsa_scheduler.py compute_api create*() and schedulers refactoring 2011-09-27 05:32:24 +00:00