def create_image(options = {})
      options = options.merge(instance_id: @id)
      resp = @client.create_image(options)
      Image.new(
        id: resp.data.image_id,
        client: @client
      )
    end
def create_image(options = {})
      options = options.merge(instance_id: @id)
      resp = @client.create_image(options)
      Image.new(
        id: resp.data.image_id,
        client: @client
      )
    end
@example Request syntax with placeholder values

   image = instance.create_image({
     block_device_mappings: [
       {
         device_name: "String",
         virtual_name: "String",
         ebs: {
           delete_on_termination: false,
           iops: 1,
           snapshot_id: "String",
           volume_size: 1,
           volume_type: "standard", # accepts standard, io1, gp2, sc1, st1
           encrypted: false,
           kms_key_id: "String",
         },
         no_device: "String",
       },
     ],
     description: "String",
     dry_run: false,
     name: "String", # required
     no_reboot: false,
   })
 @param [Hash] options ({})
 @option options [Array<Types::BlockDeviceMapping>] :block_device_mappings
   Tthe block device mappings. This parameter cannot be used to modify
   the encryption status of existing volumes or snapshots. To create an
   AMI with encrypted snapshots, use the CopyImage action.
 @option options [String] :description
   A description for the new image.
 @option options [Boolean] :dry_run
   Checks whether you have the required permissions for the action,
   without actually making the request, and provides an error response.
   If you have the required permissions, the error response is
   `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
 @option options [required, String] :name
   A name for the new image.

   Constraints: 3-128 alphanumeric characters, parentheses (()), square
   brackets (\[\]), spaces ( ), periods (.), slashes (/), dashes (-),
   single quotes ('), at-signs (@), or underscores(\_)
 @option options [Boolean] :no_reboot
   By default, Amazon EC2 attempts to shut down and reboot the instance
   before creating the image. If the 'No Reboot' option is set, Amazon
   EC2 doesn't shut down the instance before creating the image. When
   this option is used, file system integrity on the created image can't
   be guaranteed.
 @return [Image]