lib/roark/ami.rb in roark-0.0.1 vs lib/roark/ami.rb in roark-0.1.0
- old
+ new
@@ -108,10 +108,19 @@
@logger.info msg
Response.new :code => 1, :message => msg
end
end
+ def authorize_account_ids(account_ids)
+ begin
+ authorize account_ids
+ rescue AWS::Errors::Base => e
+ return Response.new :code => 1, :message => e.message
+ end
+ Response.new :code => 0, :message => 'Authorizations completed successfully.'
+ end
+
def available?
state == :available
end
def pending?
@@ -130,15 +139,27 @@
instance.instance_id
end
private
+ def instance_name
+ @name.downcase.gsub /[^a-zA-Z0-9\-]/, '-'
+ end
+
+ def authorize(account_ids)
+ ec2_ami_authorizations.add :ami_id => @ami_id, :account_ids => account_ids
+ end
+
def instance
- @instance ||= Instance.new :aws => @aws, :name => @name
+ @instance ||= Instance.new :aws => @aws, :name => instance_name
end
def ec2_ami_state
@ec2_ami_state ||= Roark::Aws::Ec2::AmiState.new @aws
+ end
+
+ def ec2_ami_authorizations
+ @ec2_ami_authorizations ||= Roark::Aws::Ec2::AmiAuthorizations.new @aws
end
def ec2_destroy_ami
@ec2_destroy_ami ||= Roark::Aws::Ec2::DestroyAmi.new @aws
end