Sha256: 8dd57cea073b6929f970c7481bef59b1a95ddad3a8719ef40ac8cf69cbb5b3e6
Contents?: true
Size: 1.82 KB
Versions: 1
Compression:
Stored size: 1.82 KB
Contents
module Fog module Compute class AWS class Real require 'fog/compute/parsers/aws/basic' # Modify image attributes # # ==== Parameters # * image_id<~String> - Id of machine image to modify # * attributes<~Hash>: # * 'Add.Group'<~Array> - One or more groups to grant launch permission to # * 'Add.UserId'<~Array> - One or more account ids to grant launch permission to # * 'Description.Value'<String> - New description for image # * 'ProductCode'<~Array> - One or more product codes to add to image (these can not be removed) # * 'Remove.Group'<~Array> - One or more groups to revoke launch permission from # * 'Remove.UserId'<~Array> - One or more account ids to revoke launch permission from # # {Amazon API Reference}[http://docs.amazonwebservices.com/AWSEC2/latest/APIReference/ApiReference-query-ModifyImageAttribute.html] # def modify_image_attribute(image_id, attributes) params = {} params.merge!(Fog::AWS.indexed_param('LaunchPermission.Add.%d.Group', attributes['Add.Group'] || [])) params.merge!(Fog::AWS.indexed_param('LaunchPermission.Add.%d.UserId', attributes['Add.UserId'] || [])) params.merge!(Fog::AWS.indexed_param('LaunchPermission.Remove.%d.Group', attributes['Remove.Group'] || [])) params.merge!(Fog::AWS.indexed_param('LaunchPermission.Remove.%d.UserId', attributes['Remove.UserId'] || [])) params.merge!(Fog::AWS.indexed_param('ProductCode', attributes['ProductCode'] || [])) request({ 'Action' => 'ModifyImageAttribute', :idempotent => true, :parser => Fog::Parsers::Compute::AWS::Basic.new }.merge!(params)) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fog-0.11.0 | lib/fog/compute/requests/aws/modify_image_attribute.rb |