From: Jan Provaznik <jprovazn(a)redhat.com>
No need to create bucket in iwhd anymore, no need to create ssh key for provider
account (ssh key is generated per instance)
---
src/app/models/provider_account_observer.rb | 34 ---------------------
src/config/environment.rb | 2 +-
src/spec/models/provider_account_observer_spec.rb | 23 --------------
3 files changed, 1 insertions(+), 58 deletions(-)
delete mode 100644 src/app/models/provider_account_observer.rb
delete mode 100644 src/spec/models/provider_account_observer_spec.rb
diff --git a/src/app/models/provider_account_observer.rb
b/src/app/models/provider_account_observer.rb
deleted file mode 100644
index fd5b65a..0000000
--- a/src/app/models/provider_account_observer.rb
+++ /dev/null
@@ -1,34 +0,0 @@
-class ProviderAccountObserver < ActiveRecord::Observer
- def after_create(account)
- # FIXME: new boxgrinder doesn't create bucket for amis automatically,
- # for now we create bucket from conductor
- # remove this hotfix when fixed on boxgrinder side
- if account.provider.provider_type_id ==
ProviderType.find_by_codename("ec2").id
- create_bucket(account)
- end
- if key = account.generate_auth_key
- account.update_attribute(:instance_key, InstanceKey.create!(:pem =>
key.pem.first, :name => key.id, :instance_key_owner => account))
- end
- account.populate_hardware_profiles
- end
-
- private
-
- def create_bucket(account)
- client = account.connect
- bucket_name =
"#{account.credentials_hash['account_id']}-imagefactory-amis"
- # TODO (jprovazn): getting particular bucket takes long time (core fetches all
- # buckets from provider), so we call directly create_bucket, if bucket exists,
- # exception should be thrown (actually existing bucket is returned - this
- # bug should be fixed soon)
- #client.create_bucket(:name => bucket_name) unless client.bucket(bucket_name)
- begin
- client.create_bucket('id' => bucket_name)
- rescue Exception => e
- Rails.logger.error e.message
- Rails.logger.error e.backtrace.join("\n ")
- end
- end
-end
-
-ProviderAccountObserver.instance
diff --git a/src/config/environment.rb b/src/config/environment.rb
index eabb8a8..f657eca 100644
--- a/src/config/environment.rb
+++ b/src/config/environment.rb
@@ -56,7 +56,7 @@ Rails::Initializer.run do |config|
config.middleware.swap Rack::MethodOverride, 'Rack::RestfulSubmit'
- config.active_record.observers = :instance_observer, :task_observer,
:provider_account_observer
+ config.active_record.observers = :instance_observer, :task_observer
# Only load the plugins named here, in the order given. By default, all plugins
# in vendor/plugins are loaded in alphabetical order.
# :all can be used as a placeholder for all plugins not explicitly named
diff --git a/src/spec/models/provider_account_observer_spec.rb
b/src/spec/models/provider_account_observer_spec.rb
deleted file mode 100644
index 6b7d62a..0000000
--- a/src/spec/models/provider_account_observer_spec.rb
+++ /dev/null
@@ -1,23 +0,0 @@
-require 'spec_helper'
-
-describe ProviderAccountObserver do
- fixtures :all
-
- it "should create an instance_key if provider is EC2" do
- @client = mock('Conductor', :null_object => true)
- @provider = Factory.build :ec2_provider
- @key = mock('Key', :null_object => true)
- @key.stub!(:pem).and_return("PEM")
- @key.stub!(:id).and_return("1_user")
- @client.stub!(:"feature?").and_return(true)
- @client.stub!(:"create_key").and_return(@key)
-
- provider_account = Factory.build :ec2_provider_account
- provider_account.stub!(:connect).and_return(@client)
- provider_account.stub!(:generate_auth_key).and_return(@key)
- provider_account.save!
- provider_account.instance_key.should_not == nil
- provider_account.instance_key.pem == "PEM"
- provider_account.instance_key.id == "1_user"
- end
-end
--
1.7.4.4