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