From: Jan Provaznik <jprovazn(a)redhat.com>
---
.../image_factory/image_imports_controller.rb | 2 +-
src/app/models/image.rb | 13 +++++++------
src/lib/tasks/dc_tasks.rake | 4 ++--
src/spec/models/image_spec.rb | 2 +-
4 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/src/app/controllers/image_factory/image_imports_controller.rb
b/src/app/controllers/image_factory/image_imports_controller.rb
index 87128af..45ba6d6 100644
--- a/src/app/controllers/image_factory/image_imports_controller.rb
+++ b/src/app/controllers/image_factory/image_imports_controller.rb
@@ -7,7 +7,7 @@ class ImageFactory::ImageImportsController < ApplicationController
def create
begin
- Image.import(ProviderAccount.find(params[:provider_account_id]), params[:ami_id])
+ Image.import(ProviderAccount.find(params[:provider_account_id]), params[:ami_id],
current_user)
flash[:notice]="Image successfully imported"
redirect_to image_factory_templates_path
kick_condor
diff --git a/src/app/models/image.rb b/src/app/models/image.rb
index 923dd23..00a674b 100644
--- a/src/app/models/image.rb
+++ b/src/app/models/image.rb
@@ -119,16 +119,16 @@ class Image < ActiveRecord::Base
Delayed::Job.enqueue(BuildJob.new(img.id))
img
end
- def self.single_import(providername, username, password, image_id)
+ def self.single_import(providername, username, password, image_id, user)
account = Image.get_account(providername, username, password)
- Image.import(account, image_id)
+ Image.import(account, image_id, user)
end
- def self.bulk_import(providername, username, password, images)
+ def self.bulk_import(providername, username, password, images, user)
account = Image.get_account(providername, username, password)
images.each do |image|
begin
- Image.import(account, image['id'])
+ Image.import(account, image['id'], user)
$stderr.puts "imported image with id '#{image['id']}'"
rescue
$stderr.puts "failed to import image with id
'#{image['id']}'"
@@ -136,7 +136,7 @@ class Image < ActiveRecord::Base
end
end
- def self.import(account, image_id)
+ def self.import(account, image_id, user)
if image_id.blank?
raise "image id should not be blank"
end
@@ -158,7 +158,8 @@ class Image < ActiveRecord::Base
:architecture => raw_image.architecture},
:complete => true,
:uploaded => true,
- :imported => true
+ :imported => true,
+ :owner => user
)
template.save!
diff --git a/src/lib/tasks/dc_tasks.rake b/src/lib/tasks/dc_tasks.rake
index 8255d32..ea775a9 100644
--- a/src/lib/tasks/dc_tasks.rake
+++ b/src/lib/tasks/dc_tasks.rake
@@ -92,7 +92,7 @@ namespace :dc do
exit(1)
end
#account = get_account(args.provider, args.account)
- img = Image.single_import(args.provider, args.username, args.password, args.image)
+ img = Image.single_import(args.provider, args.username, args.password, args.image,
User.find_by_login('admin'))
puts "Imported image with id '#{args.image}'"
end
@@ -103,7 +103,7 @@ namespace :dc do
exit(1)
end
list = YAML.load_file(args.yml_file)
- Image.bulk_import(args.provider, args.username, args.password, list)
+ Image.bulk_import(args.provider, args.username, args.password, list,
User.find_by_login('admin'))
end
def get_account(provider_name, account_name)
diff --git a/src/spec/models/image_spec.rb b/src/spec/models/image_spec.rb
index 9635f20..b902fe1 100644
--- a/src/spec/models/image_spec.rb
+++ b/src/spec/models/image_spec.rb
@@ -61,7 +61,7 @@ describe Image do
lambda do
lambda do
lambda do
- img = Image.import(account, 'mock')
+ img = Image.import(account, 'mock', Factory(:user))
img.should_not be_nil
img.template.uploaded.should be_true
end.should change(Image, :count).by(1)
--
1.7.4