On the 'new instance' form, the template is chosen on the first step. On the second page, filter out any hardware profiles that don't match the architecture of the chosen template.
Signed-off-by: Scott Seago sseago@redhat.com --- src/app/controllers/instance_controller.rb | 9 +++++++++ src/app/views/instance/configure.haml | 2 +- 2 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/src/app/controllers/instance_controller.rb b/src/app/controllers/instance_controller.rb index ad90404..a62a32e 100644 --- a/src/app/controllers/instance_controller.rb +++ b/src/app/controllers/instance_controller.rb @@ -82,6 +82,15 @@ class InstanceController < ApplicationController def configure @instance = Instance.new(params[:instance]) require_privilege(Privilege::INSTANCE_MODIFY, @instance.pool) + # FIXME: change template.architecture to match expected HWP arch strings + if (@instance.template.architecture == "64-bit") + arch_value = "x86_64" + else + arch_value = "i386" + end + @hardware_profiles = HardwareProfile.find(:all, :include => :architecture, + :conditions => {:provider_id => nil, + "hardware_profile_properties.value" => arch_value}) end
def create diff --git a/src/app/views/instance/configure.haml b/src/app/views/instance/configure.haml index 20929b4..809c044 100644 --- a/src/app/views/instance/configure.haml +++ b/src/app/views/instance/configure.haml @@ -14,7 +14,7 @@ = text_field_tag :pool_name, @instance.pool ? @instance.pool.name : '', :disabled => true %li = label :instance, :hardware_profile - = select :instance, :hardware_profile_id, @instance.pool.hardware_profiles.map {|p| [ p.name, p.id ]}, { :include_blank => true } + = select :instance, :hardware_profile_id, @hardware_profiles.map {|p| [ p.name, p.id ]}, { :include_blank => false } %li = label :instance, :realm = select :instance, :realm_id, @instance.pool.realms.map {|r| [ r.name, r.id ]}, { :include_blank => true }
On 10/28/10 - 03:20:52PM, Scott Seago wrote:
On the 'new instance' form, the template is chosen on the first step. On the second page, filter out any hardware profiles that don't match the architecture of the chosen template.
Signed-off-by: Scott Seago sseago@redhat.com
src/app/controllers/instance_controller.rb | 9 +++++++++ src/app/views/instance/configure.haml | 2 +- 2 files changed, 10 insertions(+), 1 deletions(-)
This seems to work for me. We'll have to revisit this in the future, but this is good enough for now.
ACK
deltacloud-devel@lists.fedorahosted.org