diff --git a/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/os.js b/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/os.js index 3e0cbe0ee5..883f895541 100644 --- a/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/os.js +++ b/src/sunstone/public/app/tabs/templates-tab/form-panels/create/wizard-tabs/os.js @@ -276,7 +276,13 @@ define(function(require) { success: function (request, kvmInfo){ var m = $("#machine-type").html(); if (m === undefined){ - machines = kvmInfo[0].set_kvm_machines; + if (kvmInfo.length !== 0){ + machines = kvmInfo[0].set_kvm_machines; + cpus = kvmInfo[0].set_cpu_models; + } else { + machines = kvmInfo; + cpus = kvmInfo; + } var html = ""; html += ''; html += ''; diff --git a/src/sunstone/sunstone-server.rb b/src/sunstone/sunstone-server.rb index acf6d77881..107b8dd774 100755 --- a/src/sunstone/sunstone-server.rb +++ b/src/sunstone/sunstone-server.rb @@ -631,22 +631,24 @@ get '/infrastructure' do set = Set.new - xml.each('HOST/TEMPLATE/CUSTOMIZATION') do |customization| - set.add(customization['NAME']) + if !xml['HOST/TEMPLATE/CUSTOMIZATION'].nil? + xml.each('HOST/TEMPLATE/CUSTOMIZATION') do |customization| + set.add(customization['NAME']) + end + + infrastructure[:vcenter_customizations] = set.to_a + + set_cpu_models = Set.new + set_kvm_machines = Set.new + + xml.each('HOST/TEMPLATE') do |kvm| + set_cpu_models += kvm['KVM_CPU_MODELS'].split(" ") + set_kvm_machines += kvm['KVM_MACHINES'].split(" ") + end + + infrastructure[:kvm_info] = { :set_cpu_models => set_cpu_models.to_a, :set_kvm_machines => set_kvm_machines.to_a } end - infrastructure[:vcenter_customizations] = set.to_a - - set_cpu_models = Set.new - set_kvm_machines = Set.new - - xml.each('HOST/TEMPLATE') do |kvm| - set_cpu_models += kvm['KVM_CPU_MODELS'].split(" ") - set_kvm_machines += kvm['KVM_MACHINES'].split(" ") - end - - infrastructure[:kvm_info] = { :set_cpu_models => set_cpu_models.to_a, :set_kvm_machines => set_kvm_machines.to_a } - [200, infrastructure.to_json] end