def create_appliance(name, template, basesystem, arch)
match = check_template_and_basesystem_availability(template, basesystem)
exit 1 if match.nil?
@db_adapter = get_db_adapter
app = Utils::execute_printing_progress "Cloning appliance" do
StudioApi::Appliance.clone(match.appliance_id, {:name => name,
:arch => arch})
end
@options.appliance_id = app.id
ensure_devel_languages_ruby_extensions_repo_is_added
default_packages = %w(devel_C_C++ devel_ruby
rubygem-bundler rubygem-passenger-apache2)
self.add_packages(default_packages)
self.add_packages(@db_adapter.packages) unless @db_adapter.nil?
Utils::execute_printing_progress "Uploading build scripts" do
upload_configurations_scripts
end
puts "SUSE Studio appliance successfull created:"
puts " #{app.edit_url}"
app
end