'Deletes a specified instance, which terminates the associated
Amazon EC2 instance. You must stop an instance before you can
delete it.
For more information, see `Deleting Instances`_.
**Required Permissions**: To use this action, an IAM user must
have a Manage permissions level for the stack, or an attached
policy that explicitly grants permissions. For more
information on user permissions, see `Managing User
Permissions`_.
:type instance_id: string
:param instance_id: The instance ID.
:type delete_elastic_ip: boolean
:param delete_elastic_ip: Whether to delete the instance Elastic IP
address.
:type delete_volumes: boolean
:param delete_volumes: Whether to delete the instance\'s Amazon EBS
volumes.'

def delete_instance(self, instance_id, delete_elastic_ip=None, delete_volumes=None):

    params = {'InstanceId': instance_id}
    if (delete_elastic_ip is not None):
        params['DeleteElasticIp'] = delete_elastic_ip
    if (delete_volumes is not None):
        params['DeleteVolumes'] = delete_volumes
    return self.make_request(action='DeleteInstance', body=json.dumps(params))
