aeolusproject / conductor

Aeolus Conductor
http://www.aeolusproject.org/
Apache License 2.0
32 stars 27 forks source link

a flaw in cost-based provider selection #365

Closed martinpovolny closed 11 years ago

martinpovolny commented 11 years ago

there's a flaw in the cost-based provider selection

the problem is in the first changeset where I expanded the provider selection with the hardware profile and the instance_hwp

while the Match in the models is per-instance, the Match in the provider selection is per Deployment

therefor in lib/provider_selection/base.rb

ProviderAccWithHwp = Struct.new(:provider_account, :hardware_profile, :instance_hwp)

should be ProviderAccWithHwps and It needs to contain all hardware_profiles for all instances

next in the def find_common_provider_accounts

I should be adding the hardware_profile and instance_hwp to the ProviderAccWithHwps so that I end up with having the hwps for all instances in the object

next the cost-based provider selection which is the only user of these fields so far has to calculate score for all the hardware_profiles, not just one and then probably calculate the average from the various profiles or probably even better average the prices and and calculate the score from the average